包和classpath

静态字段:

 

 number共享字段:

 

静态字段:

 

 

 静态方法:

 

 

解决类名冲突:

用package包来解决:

java定义了命名空间:包, 用包名 +类名来表示完整路径

 

这样就解决了类冲突问题:

 

因此:

 

 

 引用其他的类:

 

 

这两个包是默认import的 :

 

 

 Java源文件要按照package的层次目录存放:

 

  

最佳实践 :

 

访问权限:

定义为public的class,interface可以被其他类访问。

定义为public的field,method可以被其他类访问。

定义为private的field,method无法被其他类访问。

 

private访问权限定在class的内部,与方法声明顺序无关。

 

 

 

 

 

 

最佳实践: 

如果不确定是否需要public,就不声明为public,即尽可能少的暴露对外方法。因为private变成public很方便,但public变为private则可能导致编译错误。

 

 局部变量:

 

 final:

 

 

classpath是一个环境变量:

它指示JVM如何搜索class,JVM通过classpath决定搜索class的路径和顺序

classpath设置的搜索路劲与操作系统相关,在windows中classpath使用分号分开的。在linux和mac中是用冒号分开的。

如果classpath的目录中含有空格,这个目录就必须用双引号括起来

 注意: 点,表示当前目录

 

 classpath的设定方法:

 

 jar包: 

 

 如果我们创建了大量的class文件,如何把它们打包到一个jar文件里呢:

1. 使用jdk自带的jar命令 

2. 使用构建工具maven等

 

 JVM运行时会自动加载JDK自带的class,JDK自带的class被打包在rt.jar,因为它jdk自动加载的,所以不需要再classpath中引用rt.jar

#查找jar包文件 

jar vtf  jar包名字

 

posted on 2020-03-05 22:43  锋锋2019  阅读(138)  评论(0)    收藏  举报

导航