本篇博客将介绍Java里的包
什么是包
说到包,一般人脑子里就会出现LV呀,爱马仕呀,古驰呀。就像下面一样:
但是,我们今天要了解的包可不是这些,而是Java里的包。Java中的包(package)是组织类的一种方式,而使用包的主要目的是保证类的唯一性。
导入包中的类
java已经有很多的类可供我们直接使用,比如:
public class TestDemo {
public static void main(String[] args) {
java.util.Date date = new java.util.Date();// 得到一个毫秒级别的时间戳
System.out.println(date.getTime());
}
}
当然,这段代码也可以写成这样:
import java.util.Date;
public class TestDemo {
public static void main(String[] args) {
Date date = new Date();
System.out.println(date.getTime());
}
}
如果需要使用java.util中的其他类,可以使用下面这行代码
import java.util.*
注:import可以导入一个具体的类,但不能导入一个具体的包。
但在某些情况下需要完整类名,例如:
import java.util.*;
import java.sql.*;
public class TestDemo {
public static void main(String[] args) {
java.util.Date date = new java.uitl.Date();
System.out.println(date.getTime());
}
}
静态导入
import static可以导入包中的静态的方法和字段。例如:
import static java.lang.System.*;
public class TestDemo {
public static void main(String[] args) {
out.println("hello");
}
}
此时可以省略System,当然,这样的用法比较少。
把类放到包中
基本规则
- 在文件的最上方加一个package语句指定该代码在哪个包中。
- 包名需要尽量指定成唯一的名字, 通常会用公司的域名的颠倒形式 。
- 包名要和代码路径相匹配。
- 如果一个类没有package语句,则该类被放到一个默认包中。
操作步骤
com.bat.demo为包名。 包名一般都是小写。
这样的话,一个包就创建好了。现在就可以在包中创建类了。
假如类名为TestDemo1,那么就会出现如下的界面:
此时在包里创建类就完成了。
包的访问权限控制
如果某个成员不包含 public 和 private 关键字,此时这个成员可以在包内部的其他类使用,但是不能在包外部的类使用。例如:Test和TestDemo1在同一个包里,则
此时程序可以正常运行。
如果在不同的包里使用这个成员变量,那么程序就会出错。
Test和TestDemo不在同一个包里,所以此时程序报错。
结尾
本篇博客到此结束。
上一篇博客:Java学习苦旅(十)——链表的奥秘