java访问控制

    java访问控制的原因:1 防止程序员接触到他们不该接触的东西. 2允许库程序员修改内部结构.java的访问控制体现了面向接口编程的思想,以及面向对象编程中的实现方案隐藏的思想,本文假设你已经对package概念比较了解
    java采用三个显示关键字public,private,protected以及一个暗示性的friendly来修饰类,变量以及方法.
         public:任何后续的定义任何人都可以使用.
         private除了自己,类型的创建者以及类的内部函数,其他无法访问.
         friendly涉及到包装概念.
         protected与private相似,只是一个继承的类可以访问受保护的成员,但是不能访问私有成员.
          上面的说明比较抽象笼统,下面按照对象消息交互的两个步骤来谈访问控制,面向对象是消息驱动机制,交互有两个步骤: 一 获得对象     二给对象的接口发送消息.因此java的访问控制也主要分两个步骤:第一客户类是否能够获取对象(主要有组合 以及继承),第二:能否访问对象中的变量以及方法.
 
      根据上述两个步骤, 访问控制主要有两道关卡:1 类的访问控制权限 2类中方法的访问控制权限,具体如下:

类修饰关键词:

修饰类只能:public,abstract,final.不加修饰即为friendly类.只有修饰为public的类,别的 包的类才可以继承或者引用这个类.定义为abstract,final以及不加修饰的类,别的包的类无法继承以及引用这个类.

变量,方法修饰关键词:

public修饰的变量以及方法,任何类都可以访问,只要别的类有权限访问本类.
private修饰的方法,只有类内部才可以访问,别的类即使new了一个含有private的的class,也不可以访问private类,这样的话,A类中的private方法,无论A类是什么类型,别的类都无法访问A类的private方法,即使别的类 A a=new A();也不可以采用如下方法访问Private方法:a.privateMethodName();protected修饰的方法,同样不可以采用a.proctedMethodName()访问.private修饰的方法变量,只有B类继承了A类,才能使用super.proctedMethodName()访问.friendly修饰的方法,对别的包的类来说都是不可访问的

        

发布了34 篇原创文章 · 获赞 0 · 访问量 9万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章