美文网首页
访问控制符有几个,分别是什么

访问控制符有几个,分别是什么

作者: 骇客与画家 | 来源:发表于2018-01-01 13:00 被阅读0次

    4个

    public /protected/默认/private

    访问控制修饰符

    public和private

    • private修饰的成员变量和方法仅仅只能在本类中调用;
    • public修饰的成员变量和方法可以在任何地方调用。
    • public修饰的内容是对外提供可以被调用的功能,需要相对稳定;
    • private修饰的内容是对内实现的封装,如果“公开“会增加维护的成本。
    public class Point{
        private int x;
      private int y;
      Point(int x,int y){...}
      public int distance(Point p){...}
    }
    
    ... ... ...
    Point p1 = new Point(1,2);
    Point p2 = new Point(3,4);
    p1.x = 100
    //The field Point.x is not visible
    int d = p1.distance(p2);
    ... ... ...
    

    protected和默认访问控制

    • 用protected修饰的成员变量和方法可以被子类及同一个包中的类使用。
    • 默认访问控制即不书写任何访问控制修饰符。默认访问控制的成员变量和方法可以被同一个包中的类调用

    访问控制符修饰类

    • 对于类的修饰可以使用public和默认方式。public修饰的类可以被任何一个类使用;默认访问控制的类只可以被同一个包中的类使用。
    • protected和private可以用于修饰内部类。

    访问控制符修饰成员

    • 访问控制符修饰成员时的访问权限如下表所示
    修饰符 本类 同一个包中的类 子类 其他类
    public 可以访问 可以访问 可以访问 可以访问
    protected 可以访问 可以访问 可以访问 不能访问
    默认 可以访问 可以访问 不能访问 不能访问
    private 可以访问 不能访问 不能访问 不能访问

    相关文章

      网友评论

          本文标题:访问控制符有几个,分别是什么

          本文链接:https://www.haomeiwen.com/subject/pihtnxtx.html