zoukankan      html  css  js  c++  java
  • 访问权限

    public ,protected,friendly,private

    1.用关键字private修饰的成员变量和方法成为私有变量和私有方法

    class Tom{

    private float weight;//weight是private的float型变量

    private float f(float a,float b)//方法f是private方法

    {

    return a+b;

    }

    }

    当在另一个类中用Tom创建一个对象后,该对象不能访问自己的私有变量和私有方法

    列如:

    class Jerry

    {

    void g(){

    Tom cat =new Tom();

    cat.weight=23f;//非法

    float sum=cat.f(2,3);//非法

    }

    }

    如果Tom类中的某个成员是私有类变量(静态成员变量),那么在另一个类中也不能通过类名Tom来操作这个私有类变量。如果Tom类中的某个方法是私有的类方法,那么在另一个类中也不能通过类名Tom来调用这个私有的类方法。

    对于私有成员变量或方法,只有在本类中创建该类的对象时,这个对象才能访问自己的私有成员变量和类中的私有方法

    2.用public修饰的成员变量和方法被称为共有变量和共有方法

    列如:class Tom

    {

    public float weight;//weight是public的float型变量

    public float f(float a,float b)//方法f是public方法

    {return a+b;}

    }

    当任何一个类中用Tom创建一个对象后,该对象能访问自己的public变量和类中public方法

    3用protected修饰的成员变量和方法被称为受保护的方法

    列如:class Tom

    {protected float weight;//weight是protected的float型变量

    protected float f(float a,float b)//方法f是protected方法

    {return a+b;

    }

    当在另外一个类中用Tom类创建了一个对象后,如果这个类与Tom在同一个包中或者这个类是Tom的子类,那么该对象能访问自己的protected变量和protected方法。在任何一个与Tom同一包中的类中,也可以通过Tom类的类名访问Tom类的protected类变量和protected类方法

    }

    4不用private,public,protected修饰符的成员变量和方法被称为友好变量和友好方法

    列如:

    class Tom{

    float weight;//weight是友好的float型变量

    float f(float a,float b)//方法f是友好方法

    {return a+b;

    }

    }

    当在另外一个类中用类Tom创建了一个对象后,如果这个类与Tom类在同一个包中,那么该对象能访问自己的友好变量和友好方法。在任何一个与Tom在同一个包中的类中,都可以通过Tom类的类名访问Tom类的类友好成员变量和类友好方法。

    5.public类与友好类

    1.public类:public class A{....}

    可以在任何另一个类中使用public类创建对象

    2,友好类:一个类不加public修饰,如:classA{...};

    另外一个类中想要使用友好类创建对象时,要保证它们是在同一包中

    总结:1.不能用protected和private修饰类

            2.访问限制修饰符按访问权限从高到低的排列顺序是:public ,protected(同一包中的类,子类),friendly(同一包中的类),private

    如果有来生,要做一片树叶。 春天恋上枝,炎夏恋上水。 深秋恋上土,东来化作泥。 润物细无声,生生世世恋红尘。
  • 相关阅读:
    Autoit 使用
    小狼毫安装五笔输入法
    MIT 6.824 MapReduce
    基于JDBC封装数据库基本CURD操作
    利用反射特性完成对象的拷贝
    基于HTTP协议和HttpURLConnection完成网上资源的爬取
    应用多线程解决文件拷贝加进度条项目
    java动态代理详解
    [转]String、StringBuffer与StringBuilder之间区别
    “内聚性”和“耦合性”
  • 原文地址:https://www.cnblogs.com/shujiying/p/4783225.html
Copyright © 2011-2022 走看看