类文件管理

认知

问题

可能会有很多很多的类, 可能会有几百上千个, 都在放一起很乱

这些类还有可能重名

什么是

类的目录结构, 文件系统上会有对应的文件夹结构

效果

不同的类文件可以放到不同的包里

Package

操作

创建包

修改包名

命名规则

跟变量命名规则一致

类重名问题

同一个包下 类名 不能重名

不同包下可以出现 重名的类

package

每个类上都要写 package

package 后面跟包路径

包路径声明 必须跟 实际包路径 一致

包路径
包名.包名.包名
操作

使用包路径创建包

修改包名

导入import

类路径

包路径.类名

只有类路径才能确定一个类

原始用法

使用任何类的时候,其实都应该写类路径

1 2 3 4 5 6 7 8 9 10
package xxx.xxx;public class Driver { public static void main(String[] args) { new xxx.xxx.Driver().run(); } public void run(){ xxx.xxx.Player player = new xxx.xxx.Player(); }}

省略写法

上面的写法,太啰嗦了,所以,如果使用同包内的类,不需要包路径引导

1 2 3 4 5 6 7 8 9 10
package xxx.xxx;public class Driver { public static void main(String[] args) { new Driver().run(); } public void run(){ Player player = new Player(); }}

导入不是本包内的类

如果不在本包内,可以导入,表明之后出现的简称的来源。

import 包路径.类名;
import 包路径.*;
1 2 3 4 5 6 7 8 9 10 11 12 13 14
package xxx.xxx; import java.util.*; public class Driver { public static void main(String[] args) { new Driver().run(); } public void run(){ Player player = new Player(); LinkedList<String> list = new LinkedList<String>(); }}

自动导入

1
import java.lang.*

这个包下的类都是自动导入

System / String

不需要写 import

万一...

在一段代码里非要用到两个同名的类

则还是要打回原形

1 2 3 4 5 6 7 8 9 10
public class Driver { public static void main(String[] args) { new Driver().run(); } public void run(){ xxx.xxx.Player player1 = new xxx.xxx.Player(); yyy.yyy.Player player2 = new yyy.yyy.Player(); }}

ZZAX 微信公众

文档一更新,立刻告诉你