1.包的概念

    包是Java提供的文件组织方式。一个包对应一个文件夹,一个包中可以包括很多类文件,包中还可以有子包,形成包等级。Java把类文件放在不同等级的包中。这样一个类文件就会有两个名字:一个是类文件的短名字,另外一个是类文件的全限定名。短名字就是类文件本身的名字,全限定名则是在类文件的名字前面加上包的名字。

    使用包不仅方便类文件的管理,而且扩大了Java命名空间。不同的程序员可以创建相同名称的类,只要把它们放在不同的包中,就可以方便地区分,不会引发冲突。

    Java规定,同一个包中的文件名必须唯一,不同包中的文件名可以相同。Java语言中的这种包等级和Windows中用文件夹管理文件的方式完全相同,差别只是表示方法不同。

2.创建包

    创建包的语法格式为:

package 包名;

其中package是关键字,包名师包的标识符。package语句使得其所在文件中的所有的类都属于指定的包。

例如:

package myPackage;

    只要将该语句作为源文件的第一句,就创建了一个名为myPackage的包。

    也可以创建包的层次,为做到这点,只要将每个包名与它的上层包名用点号“.”分隔开就可以了。一个多级包的声明的通用形式如下:

package 包名 [.子包名 [.子子包名...]];

    例如,下面的声明在名为MyPackage的包中创建了它的子包secondPackage:

扫描二维码关注公众号,回复: 258612 查看本文章
package myPackage.secondPackage;

3.import语句

    在Java源程序文件中,import语句紧接着package语句(如果package语句存在的话),它存在于任何类定义之前。import声明的通用形式如下:

import package1[.package2].(类名|*);

    这里,pkg1是顶层包名,pkg2是在外部包中的用逗点“.”隔离的下级包名。除非是文件系统的限制,不存在对于包层次深度的实际限制。最后,要么指定一个明确的类名,要么使用一个星号“*”指明要引入这个包中所有的public类。

例如:

import java.util.Date;  //引入java.util.Date类
import java.io.*;  //引入java.io包里的所有public类

    星号形式可能会增加编译时间,特别是在引入多个大包时。因此,明确的命名想要得到的类而不是引入整个包是一个好的办法。而且,星号形式和类的大小对运行的时间性能没有影响。

4.访问保护

    对于类的成员而言:任何声明为public的内容可以被从任何地方访问。被声明成private的成员不能被该类外看到。如果一个成员不包含以恶搞明确的访问说明,它对于该包中的其他类是可见的,这是默认访问。如果希望一个成员在当前包外可见,但仅仅是成员所在类的子类直接可见,可把成员定义成protected。

    对于一个类而言,只有连个访问级别,默认的或是公共的。如果一个类声明成public,它可以被任何其他类访问。如果该类默认访问控制符,它仅可以被同一包中的其他类访问。

猜你喜欢

转载自blog.csdn.net/qq_40660787/article/details/79803473