混迹于C++之对象概念和关键字public 、protected、 private

来源:互联网 发布:破解软件的app 编辑:程序博客网 时间:2024/05/16 05:34

OOAD(面向对象分析和设计)把一个对象的特征称为属性,而把其行为称为服务或方法。

由于对象具有行为,并且可以接受外界的信息(信息传递),因此对外表现为能够提供一定

的服务。当我们向一个对象传递参数并调用对应的函数时,就是在请求其提供服务。

对象之间就可以通过它们能够提供的服务来交流,进而完成特定的任务。

访问控制:

public 任何代码   protected 这个类本身和子类     private只有类本身.

C++不仅允许你对在类里定义的方法和属性实施访问控制,
还允许你控制子类可以访问基类里的哪些方法和属性。
private 是在告诉编译器从基类继承来的每一个成员都当成private来对待
这就意味着只有这个子类可以使用它从基类继承来的元素。
 
C++对C的最根本改变就是把函数放在结构之中,从而产生了C++类。
类把数据和函数捆绑在一起,其中数据表示类的属性(数据成员),函数表示类的行为,也称
成员函数、方法或者服务。C++提供了的关键字

public 、protected、 private

用于声明哪些数据和函数是公开访问的、私用的或者是受保护的(受限访问)的,

这样就达到了信息隐藏的目的。

class WhoAmI{public:      WhoAmI(std::string theName);      ~  WhoAmI();      void GetMyName(void);  //名字是公开的   protected:      void GetMyAsset(void);//财产是受保护的,只有我和继承者可以使用      std::string name;//对名字进行保护,比如一个很重要的人物。private:      void GetMyGuilty(void);//罪过是要保密的,只有自己才能偷看。...};WhoAmI::WhoAmI(std::string theName){      name=theName;}int main(){      WhoamI    boy("Jack");      //boy.name="Jim";//编译出错      return 0;}


//对属性使用protected:可以对于protectd参数在建立一个对象时进行

//初始化,但不能进行赋值等修改动作(即使前面没有初始化或赋相同的值)。

原创粉丝点击