protect,public,private

    xiaoxiao2021-03-25  47

    理解很重要:

     

    -----------------------

    可见protected 和privated都是针对函数定义来说的在外部程序中都不可被调用。

    而public表示可以被外部调用---即---对象.方法 ------------------------

    原来我对protect的理解有误。 声明为protect的函数,能在子类(中定义子类的成员函数的时候)中被访问。 也就是说, 你在子类里定义一个函数,你可以直接调用那个protected的函数。

    但是在外部,即是你用子类也不能调用这个protected函数

    ------------------------

    以C++为例:   public: 数据成员和函数成员可在成员函数,友元,继承类中直接使用。亦可以作为接口,供类的用户使用(即 A a, a.change())。   private: 数据成员和函数成员,只能在 类成员和友元 中访问。不能被继承类访问(无论何种继承),虽然作为继承 类的私有成员,但 在 使用过程中,是通过调用基类的构造函数 完成参数的传递的。继承类不能访问基类的私有成员。   protect:  在基类中用法同private, 基类对象不能访问。在派生类中,用法同基类的public, 其成员可被其继承类对象访问使用。

    转载请注明原文地址: https://ju.6miu.com/read-50191.html

    最新回复(0)