包机制
问题:当定义了多个类的时候,可能会发生类名的重复问题。
在java中采用包机制处理开发者定义的类名冲突问题。
怎么使用java的包机制呢?
- 使用package 关键字。
- package 包名。
问题:
- javac PackDemo1.java编译没有问题。
- java PackDemo1 运行出错。
错误原因分析:
在当前目录下找不到有pack目录,更加找不到pack目录下面的PackageDemo1.java文件。
解决办法:
- 自己在当前目录下新建一个pack目录。
- 执行Java pagk.PackageDemo1命令。(包其实就是文件夹).
存在的问题:使用包机制的话,我们是否每次都要自己创建一个文件夹呢?
解决:
在编译的时候则可以指定类文件存放的文件夹了。
javac -d . PackageDemo1.java -d 后面跟着就是包名,指定包存放的路径。
包的优点
- 防止类文件冲突。
- 使源文件与类文件分离,便已软件最终发布。
注意细节
- 一个java类只能定义在一个包中。
- 包语句肯定是描述类的第一条语句。
包机制引发的问题
有了包之后访问类每次都需要把包名和类名写全。
解决:使用import语句。
格式: import 包名.类名 ;
注意细节:
- 1. 如果想使用一个包中的许多类时,这时不需要多条的导入语句,使用 “*”号通配符代表所有的类。
- 2. 使用*时不能导入包中的子类包的class文件。
- 3. import语句可以是多条.