java访问控制

本文详细探讨了Java中的访问控制,包括类的修饰关键词和变量、方法的修饰符,阐述了它们在不同场景下的使用和限制,帮助读者理解Java访问控制的原理和实践。
摘要由CSDN通过智能技术生成
    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修饰的方法,对别的包的类来说都是不可访问的

        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值