• java中public private protected default的区别


    1、public:public表明该数据成员、成员函数是对所有用户开放的,所有用户都可以直接进行调用

    2、private:private表示私有,私有的意思就是除了class自己之外,任何人都不可以直接使用,私有财产神圣不可侵犯嘛,即便是子女,朋友,都不可以使用。

    3、protected:protected对于子女、朋友来说,就是public的,可以自由使用,没有任何限制,而对于其他的外部class,protected就变成private。

           作用域    当前类  同一package    子孙类   其他package

            public     √           √              √             √

            protected √          √             √              ×

            private    √           ×            ×              ×

    实例:
    demo.java

    package study;
    
    public class method {
    	private int privateA;
    	public  int publicA;
    	protected int protectedA;
    	int A;//初始的
    	private void privateDemo() {
    		
    	}	
    	public void publicDemo() {
    		
    	}	
    	protected void protecteddemo() {
    		
    	}	
    	void demo() {
    		
    	}
    }
    

     Idemo.java测试子类访问权限

    package study;
    
    public class Idemo extends method{
    	public void mydemo() {
    		// TODO Auto-generated method stub
    		super.privatedemo();//不能访问父类的方法,由于定义的是private
    		super.privateA;//不能访问父类的域,由于定义的是private
    		int a=super.protectedA;//public可以访问
    		super.publicDemo();//public 可以在子类进行访问
    		int a1=super.protectedA;//protected  可以在子类进行访问
    		super.protecteddemo();//protected  可以在子类进行访问
    		int a2=super.A;//默认可以在他的子类中访问
    		super.demo();//默认可以在他的子类中访问
    		
    	}
    }
    
  • 相关阅读:
    cocos2dx 3.4 截图代码
    cocos2dx android平台事件系统解析
    cocos2dx3.4 保存json文件
    cocos2dx3.4 解析json文件
    cocos2dx3.4 分割plist图片
    cocos2dx3.4 导出节点树到XML文件
    win7系统cocos2dx 3.4 绑定自定义类到Lua
    cocos2dx 3.3创建新项目 和 VS2012解决方案加载失败问题
    浅谈端口扫描
    PHP 通过.user.ini 绕过黑名单限制
  • 原文地址:https://www.cnblogs.com/lonecloud/p/5469826.html
Copyright © 2020-2023  润新知