JAVA核心技术I---JAVA基础知识(查漏补缺private)

一:private对于类和对象

private是只有这个类内部可以访问(类的成员函数和定义初始化)
private是类之间的限制,而不是对对象的限制《重点》
同类对象是可以直接访问对象的私有成员
class priTest{
    private int age;
    
    public void setAge(int a) {
        this.age=a;
    }
    
    public int getAge() {
        return this.age;
    }
    
    public int compare(priTest obj1) {
        int flag=0;
        if(this.age>obj1.age) {
            flag=1;
        }
        return flag;
    }
}


public class PrivateTest {
    public static void main(String[] args) {
        priTest p1= new priTest();
        priTest p2= new priTest();
        
        p1.setAge(15);
        p2.setAge(16);
        
        int ret=p1.compare(p2);
        
        System.out.println(ret);
    }
}

二:子类对于父类private成员变量的访问

虽然子类无法继承父类的private变量,但是其父类private成员变量和方法依然存在,可以通过父类的公共方法(未重写)去访问到那些字段和方法
class priTest{
    private int age;
    
    public void setAge(int a) {
        this.age=a;
    }
    
    public int getAge() {
        return this.age;
    }
    
    public int compare(priTest obj1) {
        int flag=0;
        if(this.age>obj1.age) {
            flag=1;
        }
        return flag;
    }
}

class priSonTest extends priTest{
    public void test() {
        System.out.println("nothings");
    }
}
public class PrivateTest {
    public static void main(String[] args) {
        priSonTest p2= new priSonTest();
        p2.setAge(16);
        System.out.println(p2.getAge());    
   }
}

二是可以满足一的

猜你喜欢

转载自www.cnblogs.com/ssyfj/p/10223646.html