包
1. 概念
包说简单点就是文件夹,可以把包看作是管理类文件的文件夹,因为项目越大,文件和类越多。
包的好处:
1) 将功能相近的类放在同一个包中,可以方便查找与使用。
2) 由于在不同包中可以存在同名类,所以使用包在一定程度上可以避免命名冲突。
3) 在Java中,某次访问权限是以包为单位的。
4)给类提供多层命名空间
2 .创建包
创建包可以通过在类或接口的源文件中使用 package语句实现,package语句的语法格式如下:
package 包名;
包名:必选,用于指定包的名称,包的名称为合法的 Java标识符。当包中还有包时,可以使用“包1.包2.…….包n”进行指定,其中,包1为最外层的包,而包n则为最内层的包。
注意:
package 语句通常位于类或接口源文件的第一行。
写在程序的第一行。包名.类名。所有包名小写。
3. 导入包
为了简化类名的书写,使用关键字import。
例如,import java.lang.*;import java.*;
注意:
a:导入包时, *来替代导入包中的所有类。但是,建议不要使用通配符 * ,因为将不需要使用的类导入后,会占用内存空间。所有在编写程序时,要使用包中的哪些类,就导入哪些类。
b:导入的不同包中有相同类时,必须写类的全名以区分,否则将会报错。
c:import 导入的是本包中的类如果此包中有子包,不包含子包中的类。
建议建立包名不要重复,可以用URL来定义,因为URL是唯一的。
比如;www.baidu.com com.baidu.demo
3.包与包的关系
(1)包与包之间进行访问,被访问的包中的类以及类中的成员,需要被public修饰。
(2)不同包中的子类可以访问父类中被protected权限修饰的成员。
(3)包与包之间可以使用的权限有俩种:public和protected。
包中类的权限关系;
| public | protected | default | private |
同类 | OK | OK | OK | OK |
同包 | OK | OK | OK | NO |
不同包子类 | OK | OK | NO | NO |
不同包 | OK | NO | NO | NO |
注意:一个类中,只能有一个类是public的,被修饰后该类名字需要和文件名一样。