十三、面向对象程序设计

1、面向对象基本概念

面向对象的意义在于:

  • 将日常生活中习惯的思维方式引入程序设计中
  • 将需求中的概念直观的映射到解决方案中
  • 以模块为中心构建可复用的软件系统
  • 提高软件产品的可维护性和可扩展性

类和对象是面向对象中的两个基本概念

  • 类:指的是类事物,是一个抽象的概念
  • 对象:指的是属于某个类的具体实体
  • 类是种模型,这种模型可以创建出不同的对象实体
  • 对象实体是类模型的一个具体实例

一个类可以有很多对象,而一个对象必然属于某个类

类之间的基本关系

  • 继承:

    • 从已存在类细分出来的类和原类之间具有继承关系
    • 继承的类(子类)拥有原类(父类)的所有属性和行为
  • 组合

    • 一些类的存在必须依赖于其它的类,这种关系叫组合
    • 组合的类在某一个局部上由其它的类组成

继承是单向的,子类继承父类所有的属性和行为

#include <stdio.h>

struct Biology {
    bool living;
};

struct Animal : Biology {
    bool movable;
    void findFood() { }
};

struct Plant : Biology {
    bool growable;
};

struct Beast : Animal {
    void sleep() { }
};

struct Human : Animal {
    void sleep() { }
    void work() { }
};


int main()
{
    return 0;
}

2、小结

类之间可以存在继承关系或组合关系

继承关系中子类拥有父类的一切属性和行为

组合关系是类之间整体和部分的关系

类及类之间的关系可以有不同的表示法

编译器对类的表示法有具体的要求

原文地址:https://www.cnblogs.com/chenke1731/p/9626293.html