UM2L9——包

本章代码关键字

1
2
3
package            //指明类属于哪个包
import //导入包
import static //静态导入包

Java的包

Java中的包(package​)类似C#中的命名空间,主要用于解决类名冲突
同名类做不同逻辑时,可以将两个类放到两个不同的包中

Java中的包概念和使用类似C#中的命名空间
但是相对C#中的命名空间来说,Java中需要自己先创建包

在文件的开头使用package​语句指定放到哪个包下,即可将该类放到包内
但是要注意,该语句后的包名需要和java文件所在的文件夹路径对应上,否则报错

1
2
3
4
package com.taikr.java.test;

public class test2 {
}

image

在资源管理器内可以看到,所谓的包其实就是文件夹,包名中用点分割的字段就代表一个文件夹
如图就是com.taikr.java.test​的文件路径

image

包名规则

  • 多人完成,版权属于发起者:indi.发起这名.项目名.模块名....
  • 独立完成,公开,版权属于个人:pers.个人名.项目名.模块名
  • 独立完成,非公开,版权属于个人:priv.个人名.项目名.模块名
  • 团队研发,版权属于团队:team.团队名.项目名.模块名
  • 公司研发,版权属于公司:com.公司名.项目名.模块名

注意:Java中规定包名统一用小写,用.​分割

创建包

在左侧的src右键 ——> 新建 ——> 软件包

image

按照包的命名规则输入包的名字即可

image

使用包

想要使用不同包中的内容,需要在脚本前引用包
关键词:import​(类似C#中的using​)

值得一提的是,在Java中,导入包还不够,你还需要指明导入包的哪一个文件(类),使用*​可以导入所有的类

1
2
3
4
5
6
7
import com.taikr.java.test.*;

public class Lesson12 {
public static void main(String[] args) {
Test2 t = new Test2();
}
}

静态导入包

import static 包中的静态成员​ 在使用时就不用写类名直接调用静态成员即可
类似C#中的静态导入

例如静态导入System​,使得控制台输出不需要写System.out.println​,而是写out.println

1
2
3
4
5
6
7
import static java.lang.System.*;

public class Lesson12 {
public static void main(String[] args) {
out.println("静态导入测试");
}
}

输出:

1
静态导入测试