C++学习 - 面向对象 - 面向对象的语法特性(2)

访问限定符

类的属性和方法在类外访问时有不同的限定词来修饰,C++中提供了public/protect/private这三个限定词来限定从类外部访问属性和方法的范围。

*** 1. private, public, protected 访问标号的访问范围 ***

  • ** public **
    可以被 该类中的函数子类的函数其友元函数该类的对象 访问。

  • ** protect **
    可以被 该类中的函数子类的函数其友元函数、不能被 该类的对象 访问。

  • ** private **
    只能由 该类中的函数其友元函数,不能被任何其他访问,该类的对象也不能访问。

*** 2. 类的继承后方法属性变化 ***
private 属性不能够被继承。
使用private继承,父类的protected和public属性在子类中变为private;
使用protected继承,父类的protected和public属性在子类中变为protected;
使用public继承,父类中的protected和public属性不发生改变;
具体如下:

                        public:             protected:       private:
public继承               public               protected        不可用 
protected继承            protected            protected        不可用 
private继承              private              private          不可用 

你可能感兴趣的:(C++学习 - 面向对象 - 面向对象的语法特性(2))