• 访问控制符详解


    default (包访问权限 )
    如果类里的成员或者一个外部类不使用任何访问控制符修饰,我们称为包访问权限,default访问控制的成员或外部类可以被相同包下的其他类访问。
    private (当前类访问权限 )
    如果类里的成员使用private访问控制符来修饰,则这些成员只能在当前类的内部被访问。
    protected (子类访问权限 )
    如果类里的成员使用protected访问控制符修饰,那么类里的成员既可以被同一个包中的其他类访问,也可以被不同包中的子类访问。
    public (公共访问权限 )

    如果类的成员或者一个外部类使用public访问控制符修饰,那么这个成员或外部类就可以被所有类访问,不管访问类和被访问类是否处于同一个包中,是否具有父子继承关系。 

    访问控制符使用原则

    类里的绝大部分Field都应该使用private修饰,只有一些static修饰的、类似全局变量的Field,才可能考虑使用public修饰。除此之外,有些方法只用于辅助实现该类的其他方法,这些方法称为工具方法,工具方法也应该使用private修饰。 
    如果某个类主要用做其他类的父类,该类里包含的其他大部分方法可能仅希望被其子类重写,而不想被外界直接调用,则应该使用protected修饰这些方法。 
    希望暴露出来给其他类自由调用的方法应该使用public修饰。因此,类的构造器通过使用public修饰,从而允许在其他地方创建该类的实例。因为外部类通常都希望被其他类自由使用,所以大部分外部类都使用public修饰。 
    通过访问控制符的介绍不难发现,访问控制符用于控制一个类的成员是否可以被其他类访问,对于局部变量而言,其作用就是它所在的方法,不可能被其他类访问,因此不能使用访问控制符来修饰。

  • 相关阅读:
    ES6箭头函数中this的指向问题
    不借助vue-cli,自行构建一个vue项目
    Vue组件props选项-实现父子组件动态数据绑定
    Linux 基本操作命令
    Javascript
    ES6
    利用Gulp和Webpack进行项目自动化构建
    自定义View实现图片热区效果
    新年学习计划
    Activity跳转通过EventBus传值问题
  • 原文地址:https://www.cnblogs.com/t0404/p/10291093.html
Copyright © 2020-2023  润新知