一、包的基本认识
包是组织类的一种方式,使用包的主要目的是保证类的唯一性。
导入包中的类
我们可以使用import语句导入包,也可以导入具体的类名,但我们更建议导入具体的类名,因为有的类在不同包中有相同的名字,必须写完整防止出现冲突。
import java.util.*;
import java.sql.*;
public class Test {
public static void main(String[] args) {
// util 和 sql 中都存在一个 Date 这样的类, 此时就会出现歧义, 编译出错
Date date = new Date();
System.out.println(date.getTime());
}
}
// 编译出错
Error:(5, 9) java: 对Date的引用不明确
java.sql 中的类 java.sql.Date 和 java.util 中的类 java.util.Date 都匹配
import java.util.*;
import java.sql.*;
public class Test {
public static void main(String[] args) {
java.util.Date date = new java.util.Date();//使用具体的类名
System.out.println(date.getTime());
}
}
使用import static导入静态类
import static可以直接导入包的静态类和静态方法
import static java.lang.System.*;//导入静态类
public class Test {
public static void main(String[] args) {
out.println("hello");
}
}
包的权限访问控制
类的修饰符有public、private等,public和private中的成员,只能被类的内部使用,如果我们在类的前面不加public和private修饰符,就可以在同一个包中的其他类中使用,但是不能被其他包中的类所使用。下面我们来举例分析: