理解很重要:
-----------------------
可见protected 和privated都是针对函数定义来说的在外部程序中都不可被调用。
而public表示可以被外部调用---即---对象.方法
------------------------
原来我对protect的理解有误。
声明为protect的函数,能在子类(中定义子类的成员函数的时候)中被访问。
也就是说,
你在子类里定义一个函数,你可以直接调用那个protected的函数。
但是在外部,即是你用子类也不能调用这个protected函数
------------------------
以C++为例:
public: 数据成员和函数成员可在成员函数,友元,继承类中直接使用。亦可以作为接口,供类的用户使用(即 A a, a.change())。
private: 数据成员和函数成员,只能在 类成员和友元 中访问。不能被继承类访问(无论何种继承),虽然作为继承
类的私有成员,但 在 使用过程中,是通过调用基类的构造函数 完成参数的传递的。继承类不能访问基类的私有成员。
protect: