1 包
类似于OS中的文件夹。
用来存放一组含义类似或相同的java类(接口),方便分类和管理。
对应关系:
-
java程序中的类 --- os中的.java文件
-
java程序中的包 --- os中的文件夹
如何指定包:
-
在os中创建对应的文件夹
-
在文件夹中创建对应的.java文件
-
在java文件的第一行,使用package关键字指定当前文件中的类所属的包
注意
-
对于定义包的类文件如何进行编译呢?
-
基本上与之前一样,只要能找到java文件,就可以编译
-
扩展一个可以一次性编译所以java文件的命令
for /r %a in (*.java) do javac %a -encoding utf-8
2 类名
-
有了包之后, 类的名字就有两个
-
一个叫类短名, 就是定义类时,class后面的那个名字
-
一个叫类长名,就是含有包路径的名字
package com.a ; public class A{}
-
A
类短名 -
com.a.A
类长名
3 使用其他包中的类
-
两个类,分属于不同的包
com.a.A
com.b.B
-
如果要在A类中使用B类,有两种方式
-
在A类中,使用类长名,来使用B
package com.b ; public class B{}
package com.a ; public class A{ main(){ com.b.B b = new com.b.B(); } }
-
在A.java文件的第二行(package下面),使用import关键字,引入另一个类
package com.a ; import com.b.B ; //表示只引入指定的类 import com.b.* ; //表示引入包中的所有类 public class A{}
-
注意
-
在import导入包中的类时,只会导入指定包中的类,而不会导入子包中的类
com.*
只会引入com包中的类,com包中的子包中的类不会被引入
import 扩展
可以使用import关键字,引入某一个类中的静态资源
4 带有包的程序运行
-
进入包所在的根目录
-
运行时,指定类全名
5.2 成员访问权限
-
成员 指的就是类中的属性和方法 (普通属性方法 和 静态的属性方法)
-
成员的访问权限有4种
-
public 公共的 所有的类都可以访问
-
缺省 默认的 本包中的其他类可以访问,其他包中的类不能访问
-
private 私有的 只有本类可以访问,其他类不能访问
-
protected 保护的 本包中的类可以随意访问,外包的子类可以通过继承访问。
-