java的访问控制符分为两类:类的访问控制符,属性和方法的访问控制符。

1. 类的访问控制符有两种:public, default(默认的,什么都不用写)
   default就是包内访问控制符。
   当然对于内部类还可以有static修饰,而用static修饰的内部类叫作嵌套类。

2. 属性和方法的访问控制符有四种:private, default, protected, public

可以用如下的表描述:(Yes表示可访问,空表示不可访问)

作用:变量方法上的修饰

 

 1 package com.gxa.day8.am;
 2 
 3 import com.gxa.day8.DefaultSample;
 4 import com.gxa.day8.PrivateSample;
 5 import com.gxa.day8.ProtectedSample;
 6 import com.gxa.day8.PublicSample;
 7 
 8 /**
 9  * AccessSample来完成对访问修饰符的测试
10  * 1. private 只有在本类可以访问
11  * 2. 默认 可以在本类和同一包下访问
12  * 3. protected 可以在本类,同一个包, 不同包的子类访问
13  * 4. public 可以在本类,同一个包,不同的子类,没有任何继承关系下都可以访问
14  * @author caleb
15  *
16  */
17 public class AccessSample extends ProtectedSample {
18     
19     public void m01() {
20         this.name = ""; //访问的ProtectedSample下的name(有继承关系不同包name属性)
21     }
22     
23     public static void main(String[] args) {
24         PrivateSample privateSample = new PrivateSample();
25         privateSample.name = ""; //不能访问private修饰的name
26         
27         DefaultSample defaultSample = new DefaultSample();
28         defaultSample.name = ""; //不能访问不同一个包下的name
29         
30         ProtectedSample protectedSample = new ProtectedSample();
31         protectedSample.name = ""; //不能访问, 因为只能通过继承关系直接访问, 不能创建来访问
32         
33         PublicSample publicSample = new PublicSample();
34         publicSample.name = ""; //访问的PublicSample的下的name
35     }
36 }

注意事项

  • java面向对象的封装性对以后做程序很有帮助,可以在实际操作项目中锻炼学习。

  • 最好不要图方便一直用public而失去了封装的意义

 

posted on 2016-04-06 18:14  Oliver·Keene  阅读(1169)  评论(0)    收藏  举报