Java访问控制权限
2017-10-20 20:55
176 查看
导语
封闭性与访问控制权限是有直接联系的。主要内容
Java访问控制权限具体内容
在Java里面一共支持四种控制权限。public、protected、default、private,而这四种访问控制权限特点:No. | 范围 | private | default | protected | public |
---|---|---|---|---|---|
1 | 在同一个类中 | √ | √ | √ | √ |
2 | 在同一包的不同类 | √ | √ | √ | |
3 | 在不同包的子类 | √ | √ | ||
4 | 在不同包的非子类 | √ |
重点来看protected这种权限。它直接与包的定义有关。
protected访问权限
protected访问权限,它直接与包的定义有关。**范例:**protected访问权限
定义cn.mldn.demoa.A类
package cn.mldn.demoa; public class A { protected String info = "Hello"; }
定义cn.mldn.demob.B类
package cn.mldn.demob; improt cn.mldn.demoa.A; public class B extends A { // 是A不同包的子类 public void print() { System.out.println("A类中的info = " + super.info) } }
定义Test类
package test; improt cn.mldn.demob.B; public class Test { public static void main(String args[]) { new B().print(); } }
输出结果:
A类中的info = Hello
B中的print()方法会输出A类中的info属性。
Test类直接去输出A类中的info属性(错误代码)
package test; improt cn.mldn.demoa.A; public class Test { public static void main(String args[]) { A a = new A(); System.out.println(a.info); } }
编译会出错,由于Test与A类不在同一个包,并且没有继承关系,所以是无法访问protected属性的。
总结
Java的封装性是以private、protected、default三种权限的定义。进入我的CSDN戳这里(我的博客导航)
相关文章推荐
- 理解Java访问权限控制
- Thinking in Java 第6章 访问权限控制 【包:库单元】
- java访问权限控制
- Java 编程思想(第四版)学习笔记(6)访问权限控制
- ThinkJava-访问权限控制
- 【Java】Java语言重点概念#1——访问权限控制
- JAVA访问权限控制
- java权限拦截,控制当前登录用户访问方法,访问路径,并json提示,驳回请求
- Java中的包与访问权限的控制
- 12.16(Java 访问权限控制, ClassPath,ibatis调试心得)
- java访问权限控制符
- Thinking in Java——第六章-访问控制权限
- Java访问控制权限总结
- [think in java] 知识点-访问权限控制
- Java中的访问权限控制
- Java访问控制权限
- Java基础--访问权限控制符
- Java面向对象-访问控制权限
- salesforce 访问权限控制以及和java的区别
- java 类与对象(初始化、访问权限控制)