private

// 父类  1包中
  public class Computer {
    private String name = "计算机";

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
    private void call(){
        System.out.println("我叫计算机不是计算器");
    }
}
// 子类 2包中
public class Lenovo extends Computer {
    private String name = "联想";
    public Lenovo() {
        super.setName("电脑");
        System.out.println("父类的私有属性name: " + super.getName());
    }
    private void call(){
        System.out.println("我叫联想,一线品牌联想");
    }
    void fn(){
        this.call();
    }
}

// 主类 2包中
public class MyClass {
    public static void main(String[] args) {
        new Lenovo().fn();
    }
}

// 父类的私有属性name: 电脑  =>  由于父类的get set 是public的所以子类可以通过get、 set去操作父类私有属性,直接读取不可
// 我叫联想,一线品牌联想 => 私有属性本类调用
// 私有方法 子类中就算是同名、同返回、同参也是重新实现 ,其实这个叫不叫重写根本就无所谓,因为外部不能调啊哈哈

// 从内存上看私有方法和属性都是可继承不可访问的,表现上来看也就是做个样子
你的努力有资格到拼天赋的程度吗?
原文地址:https://www.cnblogs.com/wchjdnh/p/14418281.html