J2SE_访问权限(public, protected, default, private)
来源:互联网 发布:淘宝suvi韩国代购假货 编辑:程序博客网 时间:2024/05/17 20:24
一、四种访问权限简介
1)public: 公共访问权限,不管在本类,本包,子类,不同包中都可以访问被public修饰的属性和方法
2)protected: 包级访问权限,在本包中和其他包的子类中可以访问
3)default: 包级访问权限,在本包中可以访问,出了本包都是非法的
4)private: 类级访问权限,只有在本类可以访问,出了本类都是非法的
二、简图
三、示例代码
1)类A
四种不同访问权限的方法
package com.wbf.test1;public class A {public void pub(){System.out.println("...public...");}protected void pro(){System.out.println("...protected...");}void def(){System.out.println("...default...");}private void pri(){System.out.println("...private...");}}2)类B
与A类同一个包,不是A的子类。除了private方法不可以方法,其他的都可以。
package com.wbf.test1;//与A类同一个包,不是A的子类public class B {public static void main(String args[]){A a = new A();a.pub(); //pub()为A的public方法a.pro(); //pro()为A的protected方法a.def(); //def()为A的default方法//a.pri(); //pri()为A的private方法}}3)类C
与A不同包,不是A的子类。除了public方法可以访问,其他的都不可以。
package com.wbf.test2;import com.wbf.test1.A;//与A不同包,不是A的子类public class C {public static void main(String args[]){A a = new A();a.pub(); //pub()为A的public方法//a.pro(); //pro()为A的protected方法//a.def(); //def()为A的default方法//a.pri(); //pri()为A的private方法}}4)类A1
与A同包,是A的子类。除了private方法不可以访问,其他的都可以。
package com.wbf.test1;import com.wbf.test1.A;//与A同包,是A的子类public class A1 extends A {public static void main(String[] args) {A a = new A();a.pub(); //pub()为A的public方法a.pro(); //pro()为A的protected方法a.def(); //def()为A的default方法//a.pri(); //pri()为A的private方法A1 a1 = new A1();a1.pub();a1.pro();a1.def();//a1.pri();}}5)类A2
与A不同包,是A的子类。
通过子类A1可以访问从父类继承来的public和protected方法,default和private方法不可以访问。
通过父类A来访问自身的方法,发现只有public方法可以访问,因为其他3中方法的访问权限都是在包级以内的,出了包,就不可以访问了。
package com.wbf.test2;import com.wbf.test1.A;//与A不同包,是A的子类public class A2 extends A {public static void main(String[] args) {A a = new A();a.pub(); //pub()为A的public方法//a.pro(); //pro()为A的protected方法//a.def(); //def()为A的default方法//a.pri(); //pri()为A的private方法A2 a2 = new A2();a2.pub();a2.pro();//a2.def();//a2.pri();}}四、小结
1)default和protected都是包级访问权限,出了包就都不可以方法。但是protected属性或方法可以在不同包的子类中访问。
2)从thinking in java和 core java中都可以看出,子类继承了父类的所有属性和方法,只不过private属性和方法的访问级别是类级别,出了本类就无法访问了。
0 0
- J2SE_访问权限(public, protected, default, private)
- 访问控制权限public protected default private
- 访问权限public,protected,private,default
- 访问权限---public/protected/default/private
- 访问权限,public private , default ,protected
- public,protected,default ,private的访问权限
- public protected default private 权限
- private、protected、default、public权限
- java 中 private public protected default 访问权限的区别
- public default protected private的访问权限区别
- Java之访问权限修饰符 private default protected public
- java类的访问权限问题(public default private protected)
- 例解public protected default private访问权限问题
- java面试题三十 public,private,protected,default访问权限
- Java中的访问控制权限public protected default private
- Java public protected default private 访问权限区别
- java-权限private、default、protected、public
- Java访问权限修饰词private、public、protected、default、default(缺省)
- php页码形式分页函数,支持静态化地址
- 创建弧形多段线(polyline)
- Netty 学习笔记之【回调设置】
- EXCEL比較ツール
- Python之os模块的进程管理介绍
- J2SE_访问权限(public, protected, default, private)
- #import引入和@class引入
- 获取网络图片
- CocoaPods安装和使用教程
- 自动跟踪导弹算法(未整理)
- Ubuntu 12.04下QQ安装步骤
- IOS 开源库 asyncSocket
- fsdaf
- mysql随便记些