A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 牛角尖、 中级黑马   /  2015-12-3 08:35  /  626 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

看完基础视频,对于面向对象编程的理解,应用与实际开发的时候,面相对象编程有极大的优势。

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

对于面相对象化编程(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;
    }

}

以上都是我自己对面向对象化的理解,也许有偏差

1 个回复

倒序浏览
对实体的建模
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马