Java的访问控制符

发表于:2016-4-08 10:01

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:Oliver·Keene    来源:51Testing软件测试网采编

  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而失去了封装的意义。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号