一个Java项目中都会包含大量的代码,类,接口,这时这些类在工程列表中都是按首字母顺序排序的,所以对于寻找某一专项的代码而言是极其不方便的。而使用Java中的包,就截然不同了
包是一种可以将大量的java类模块化分类的东西,以下便是在java项目中创建包的操作:
首先右键点击项目名,选择new中的package,点击:
然后在下面的窗口中命名包名
包名的命名之间用.来隔开,前半部分是域名倒置,最后一个.后面是包名,如下,com.jd是域名倒置,tool是包名,点击finish,一个包就创建好了:
多创建了几个模块化的包就是这样的:
既然项目中有不同的包,那么在编程过程中就需要引包操作,那么在什么时候需要引包呢?
如果要使用的自定义的类不在同一个包中,则需要引包。
如果要调用JDK中包,则需要进行引包操作
我们先在刚才的项目中每个包都创建一个类:
假如我们在Test类中创建并使用Tool类,这时便需要引包,这时引包方法有以下两种:
package com.jd.tool; public class Tool { public void eat() { } } package com.jd.test; public class Test { public static void main(String[] args) { new Tool().eat(); } }上段代码中由于没有引包所以编译器会报错,这时我们将鼠标放到报错的位置上:
点击Import ‘Tool’,这时代码中就会出现引入的com.jd.tool包
它的作用是将代码中未引入的包直接引入
两种方法的最终结果都是这样:
package com.jd.test; import com.jd.tool.Tool; public class Test { public static void main(String[] args) { new Tool().eat(); } }引包有两种方式一种是像上述方法一样精确到具体哪个类,这种方式叫精确引包,它的性能较高,在开发软件时要求必须精确引包。
还有另一种引包方式叫抽象引包,它的使用是导入整个包,如下:
package com.jd.test; import com.jd.tool.*; public class Test { public static void main(String[] args) { new Tool().eat(); } }这种引包方式会比较影响性能,为了一个类的使用而引入了整个包,不会在开发中使用,但是做实验和做展示时为了方便易操作,可能会用的到这种引包方式。
包名不能以java开头,因为JDK中的包是以java开头的
也就是说包名前面不能有有效代码行,但是可以有注释
包的命名只能使用小写字母和.不能使用_和$