欢迎加入我们的学习交流群呀!
1:这是孙哥suns给大家的福利!
2:我们免费分享Netty、Dubbo、k8s、Mybatis、Spring、Security、Docker、Grpc、消息中间件、Rpc、 SpringCloud等等很多应用和源码级别高质量视频和笔记资料,你想学的我们这里都有!
3:QQ群:583783824 工作VX:BigTreeJava 拉你进VX群,免费领取!
4:以上内容,进群免费领取呦~
一:Java中的包简介
1:使用包的目的
使用包名目的主要还是保证类名的唯一性。相同名称的类在同一包下就不会产生问题。
包名.类名就是最终的全限定名
2:类的导入
一个类可以使用包中的所有的类,以及其他包中的所有的public修饰的公共类。
类使用包中类的时候无需导包,但是使用其他包下公共类的时候需要导包,或者基于全限定名进行使用。
3:导包
import java.util.* -- 导入整个包 import java.sql.* import java.util.Date -- 单独导入这个类,我们使用Date的时候,编译器就不会疑惑了。 import java.util.ArrayList -- 导入整个类
如果一个类当中两个包下的Date都需要使用,那么就需要在代码里边使用全限定名称进行区分了。
4:静态导入
import static java.lang.System.* --导入System类中的所有的静态资源。 import static java.lang.System.out -- 导入System类中特定的静态字段或者静态方法
5:包中类
package com.taobao.core public class Emm{}
com这个报名为:基目录
. (base directory) |-PackageText.java |-PackageTest.class |-com/ |-taobao/ |-core |-Employee.java |-Employee.class
想要编译这个程序,只需要走到com这个基目录下,运行javac PackageTest.java编译器就会自动找到com.taobao.core.Employ.java进行编译。
编译器在编译源文件的时候不检查类上的目录结构是否与所在目录接口一致。如果这个类不依赖于其他包,就可以顺序的编译通过,但是运行的时候,是运行不过去的,他需要回到他正确的位置。因为,所在包与类上标明的包地点不一致的话,虚拟机是找不到这个类的。
6:包访问
访问修饰符public和private。标记为public的部分可以被任意位置访问,标记为private的部分只可以被定义他们的位置访问。两者都没有的话(类、方法、变量),只可以被同步包内的所有的方法进行访问