Day09 权限修饰符

106 阅读1分钟

定义一个类

package t1;

public class T1 {
	
	private   int a = 10;//私有的
	          int b = 20;//默认的
	protected int c = 30;//受保护的
	public    int d = 40;//公共的
	
	public void name() {
		System.out.println(a);
		System.out.println(b);
		System.out.println(c);
		System.out.println(d);
		
	}

}

同包下测试类

package t1;

public class T2 {

	public static void main(String[] args) {
		T1 t1 = new T1();
//System.out.println(t1.a);  被private修饰的变量在同包下中的其他类中不可使用
System.out.println(t1.b);
System.out.println(t1.c);
System.out.println(t1.d); 
}


}

不同包下测试类

package t2;

import t1.T1;

public class Test1 {
	public static void main(String[] args) {
		T1 t1 = new T1();
//		System.out.println(t1.a);//出类不可用
//		System.out.println(t1.b); //默认同包下可访问不同包下不可访问
//		System.out.println(t1.c); //被protected 修饰的变量 不同包下不可访问可继承
		System.out.println(t1.d);//被public修饰的变量任意使用
}

}