码迷,mamicode.com
首页 > 编程语言 > 详细

c++类和继承

时间:2015-02-12 21:23:46      阅读:264      评论:0      收藏:0      [点我收藏+]

标签:

 


先说说 类

如果你正在写一个网络游戏 这个游戏里面有很多怪物是吧 新手要打的怪物有 鸡啊 狗啊 猪啊 鱼啊
网络游戏是要更新的 也许你游戏一刚出来 只能打鸡 然后玩家都练到满级了 你需要继续吸引玩家 砸门就引入新的怪物 狗啊 猪啊 鱼啊。。。。。

显然 面向对象的方法是 为每种怪物写个类 (class 鸡 ,class 狗 ,class猪,class 鱼)刷新生成怪物的时候就 创建对应的对象 删除对象 就是怪物死了。

然后你可能要问,为什么要用类啊?类是用来干什么的呢?我们来解释下:

首先这里有 三只鸡 分别叫 大鸡 中鸡 小鸡

我们发现 大鸡 中鸡 小鸡 有相同的属性啊 比如 身高 体重 年龄

大鸡 中鸡 小鸡 还有相同的动作啊 吃 睡

我们把这些相同的属性相同的动作 抽离出来 形成了类

class 鸡()

{

int 身高;

int 体重;

int 年龄;

void 吃()
{
//这里写鸡吃的时候做了什么
}
void 睡()
{
//这里写鸡睡的时候做了什么
}

}
  我们通过类 生成对象 然后对象因为彼此属性的不同被区分(因为大鸡比小鸡高 就是大鸡)

所以说 类 就是一些属性和动作的集合

对象使用类当作模板生成 然后赋予自己的属性 就成了对象

 

说说继承

砸门前面说过啊 要写个网络游戏 有这些类 class 鸡 ,class 狗 ,class猪,class 鱼

我们发现这些类 有共通之处啊 他们都是动物啊 属性都有年龄 身高 体重 动作都有 吃 睡

那我们可以偷懒只写一个类 class动物吗?

答案是不行啊兄弟 鸡会下蛋 狗可不会 鸡狗 虽然有身为动物的属性和动作 但是也有不同的属性和动作的

但是程序员会偷懒的(额 应该说 程序员遵循 "可复用原则" )尽量不要写 重复的代码 在鸡类里写 吃的动作 难道再在 狗 类里写一遍?不行 太麻烦

于是他们创造了 继承

现在有一个动物类

class 动物()
{
int 身高;
int 体重;
int 年龄;
void 吃()
{
//这里写吃要做的事
}
void 睡()
{
//这里写睡要做的事
}
}
  

然后我们用继承的方法写个class 鸡

class 鸡:动物
{
void 下蛋()
{
//这里写下蛋要做的事
}

}
 

class 鸡:动物 就是说 鸡继承自动物
然后 鸡就自动有了 动物的属性 和 动作 不用我们写了 这里还有访问修饰符这个东西 用来限制鸡类可以继承什么 不可以继承什么(如果你不想让鸡睡觉的话 就把睡觉动作设为私有) 这里我就不具体讲访问修饰符了 就是限制访问和继承的东西 去看看资料吧
这,就是继承

 

c++类和继承

标签:

原文地址:http://www.cnblogs.com/lplz/p/4288842.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!