黑马程序员技术交流社区

标题: 关于面向对象化编程思想 [打印本页]

作者: 牛角尖、    时间: 2015-12-3 08:35
标题: 关于面向对象化编程思想
看完基础视频,对于面向对象编程的理解,应用与实际开发的时候,面相对象编程有极大的优势。

首先来看基本概念:
面向对象是软件开发方法,是一种对现实世界的理解和抽象的方法。
类:是有相似的内部状态和运动特征的实体的集合。(一类事物,鸟类、家具类、、、)
对象:指实体的抽象的事物,是类的一个或多个实例
消息:对象之间相互联系和相互作用的方式
多态:相同的声明多种不同的实现方法

对于面相对象化编程(oop)我自身来说最直接的理解就是模拟人生类 的游戏,在这种游戏中有很多类生物,比如说人,即可以定义一个human类,这个类的属性有身高、体重、姓名、性别、肤色、发型等。方法有吃饭、喝水、睡觉等。即每当实例化这个human类我就理解为生成一个新的人(实体),对于不同的国家或者是不同肤色的人都是这个human类的子类,继承父类human的属性,同时又有自己的特质。

用C++编码实现
class student{
public:
    int  id;//学号
    int  age;//年龄
    int  classNum;//班级编号
    char  *job;//职务
protected:
    int  hungerValue;//饥饿值

    public void eat(int value)//吃饭的方法
    {
        this->hungerValue += value;
    }
    public void setClassNum(int  num)
    {
        this->classNum = num;
    }

}

以上都是我自己对面向对象化的理解,也许有偏差
作者: 牛角尖、    时间: 2015-12-3 09:19
对实体的建模




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2