当两个程序员都要写一个类名相同的类时,会产生冲突。因此可以使用包来进行更高的管理
package com.包名;
package 关键字 代表打包
com.包名 表示包的命名
包的本质就是创建不同的文件夹/目录来保存类文件
使用IDEA解决,两个程序员都要写Dog类的的尴尬,并在另一个包里实例化两个Dag类
1-首先新建一个项目
2-新建一个包com.xiaoming 作为第一个Dog类的存放地址。COM会自动生成一个文件夹
3-再新建一个包 com.xiaoqiang 作为第二个Dog类的存放地址。由于前缀也是com所以xiaoqiang这个包也会在com文件夹下
4-在两个包下都创建Dog类
5-再从com文件夹下创建一个包,作为调用包
6-在use包内创建一个test类实例化另两个包的Dog类
注意点:创建第一个Dog类时,检测到其他包有同名类,会让你选择实例化哪个包的类。选择后会自动导入包,不用手动写导入。创建第二个包时,必须将具体是哪个包下的类写出来。
亦或者 第一个和第二个都完整写出类位置实例化 例如:
com.xiaoqiang.Dog xiaoqiang = new com.xiaoqiang.Dog();
com.xiaoming.Dog xiaoming = new com.xiaoming.Dog();
一般是小写字母+小圆点
com.公司名.项目名.业务模块名
例如 com.alibaba.crm.user 这里就是阿里巴巴公司的CRM项目的用户模块
com.alibaba.crm.order 订单模块
com.alibaba.crm.utils 工具类模块
语法:import 包;
引入包的目的是为了使用包下面的语法。
import java.util.Scanner;就只是引入了util包下的一个Scanner类
import java.util.*;表示将util包下的所有类都引入
一般都是要用哪个类就引入哪个类
小练习
使用util包下的Arrays类中的sort方法完成对一维数组的排序
package com.packageTeat;
import java.util.Arrays;
public class pagTest1 {
public static void main(String[] args) {
int [] arr = {54,4,32,42};
Arrays.sort(arr);
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i]+" ");
}
}
}
1-package 的作用是声明当前类所在的包,需要放在类的最上面,一个类中最多有一句package
2-import指令 位置放在package的下面,在类定义的前面,可以有多句且没有顺序要求