1 在类内部的访问权限:
public继承方式其父类的 public protect 成员和方法都可以在子类内部访问,private成员是不可见不可访问的。
protected继承方式 其父类的public protected 成员和方法都可以在子类内部访问,private成员是不可见不可访问的。
private继承方式 其父类的public protected 成员和方法都可以在子类内部访问, private成员是不可见不可访问的。
2 在类的实例对象的访问权限
public继承方式 其父类的 public成员和方法在类对象是可以访问的,其protected private成员是不可见不可访问的。
protected 继承方式 其父类的 public成员在类对象是可见但是不可访问的,其protect private成员是不可见不可访问的。
private 继承方式 其父类的 public成员在类对象是可见但是不可以访问的 其protected private成员是不可见不可访问的。
这么说可能很绕,想了半天 打个比方来理解。
我们继承父类可以看做把父类的所有的除了private成员的代码写到子类中来,
如果是public继承 父类代码不做变动,也就是说 父类的public代码在子类部分全部是public代码 在类的实例对象是可以任意访问的
如果是protect继承,那么父类的所有代码在子类中全部变成protect代码,那么在类的实例对象是无法访问的,但是对于原本父类的public成员是具有可视权限的
如果是private继承, 那么全部变成private代码 类对象无法访问, 同样的 原本父类的public成员是有可视权限的。
这样来理解稍微好那么一点点 ,这样理解有一个好处就是可以看到面向对象编程强大的代码重用之处。
个人浅显的理解 写的不好希望指出 谢谢。 欢迎大牛拍砖批评。