zoukankan      html  css  js  c++  java
  • Java中权限修饰符public、private、protected和default的区别

    1、public

    可以修饰类、成员变量和成员函数,没有任何限制,同一个包中,或者不同包中的类都可以自由访问


    2、private

    可以修饰成员变量和成员函数,只能在本类中使用


    3、default

    (不写权限修饰符,就是default权限)可以修饰类、成员变量和成员函数,在同一个包中,可以自由访问。如果子类和父类不在同一个包中,子类可以继承到父类中的default权限的成员变量和成员函数,但是由于权限不够,无法使用


    4、protected

    protected权限首先拥有和default一样的功能,但是该权限只能修饰成员变量和成员函数

    5、继承和访问权限

    (1)、如果是在同一个包内发生继承:
    子类可以继承父类所有的变量,但子类对象只能使用父类中public、protected、default成员变量,不可以使用private变量;
    (2)、如果是跨包继承:
    对于父类中的 public 变量,子类可继承,可使用;
    对于父类中的 protected 变量,子类可继承,可使用,但非子类不可使用;
    对于父类中的 default 变量,子类可继承,不可使用;
    对于父类中的 private 变量,子类可继承,不可使用。

  • 相关阅读:
    css text-transform 属性
    CSS3 @media编写响应式页面
    css :first child与:first-of-type的区别
    前端外语网站合集
    webpack配置自动添加CSS3前缀
    vue中extend/component/mixins/extends的区别
    js缓动函数
    [LeetCode] 78. 子集
    [LeetCode] 76. 最小覆盖子串
    [LeetCode] 75. 颜色分类
  • 原文地址:https://www.cnblogs.com/danbing/p/5043609.html
Copyright © 2011-2022 走看看