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、小结

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

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

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

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

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

十三、面向对象程序设计相关推荐

  1. 张季跃 201771010139《面向对象程序设计(java)》第十三周学习总结

    张季跃 201771010139<面向对象程序设计(java)>第十三周学习总结 实验部分: 1.实验目的与要求 (1) 掌握事件处理的基本原理,理解其用途: (2) 掌握AWT事件模型的 ...

  2. 面向对象程序设计课程进度条

    面向对象程序设计课程进度条 周次 (阅读/编写)代码行数 发布微博量/博客评论数量 课堂/课余学习时间(小时) 最满意的编程任务 第一周 42/25 1/0 4/3 乘法表实验 第二周 150/100 ...

  3. 焦旭超 201771010109《面向对象程序设计课程学习进度条》

                                                                                                        ...

  4. 赵栋 201771010137 《面向对象程序设计(java)》课程进度表

                                                                                                        ...

  5. php面向对象程序设计,PHP面向对象程序设计类的定义与用法简单示例

    本文实例讲述了PHP面向对象程序设计类的定义与用法.分享给大家供大家参考,具体如下: class Person { private $name; private $sex; private $age; ...

  6. 常惠琢 201771010102《面向对象程序设计(java)》第七周学习总结

    实验七 继承附加实验 实验时间 2018-10-11 1.实验目的与要求 (1)进一步理解4个成员访问权限修饰符的用途: (2)掌握Object类的常用API用法: (3)掌握ArrayList类用法 ...

  7. 2017《面向对象程序设计》寒假作业一

    1.你有什么技能比大多人(超过70%以上)更好? 我看电影比一般人多一点点:我听英文歌比一般人多一点点:我有一把尤克里里和一个滑板.我有很多爱好,但都没能发展成我的特长,它们给我的生活增添了情趣,又不 ...

  8. java面向对象电子科大版答案_电子科大17秋《面向对象程序设计》在线作业1

    电子科大17秋<面向对象程序设计>在线作业1 ----------------------------------------------------------------------- ...

  9. 20155328 《Java程序设计》 实验二(Java面向对象程序设计) 实验报告

    20155328 <Java程序设计> 实验二(Java面向对象程序设计) 实验报告 单元测试 一.单元测试和TDD 编程时需理清思路,将编程需求等想好,再开始编.此部分可用伪代码实现. ...

  10. JavaScript中的面向对象程序设计

    本文内容目录顺序: 1.Object概念讲述: 2.面向对象程序设计特点: 3.JavaScript中类和实例对象的创建: 4.原型概念: 5.原型API: 6.原型对象的具体使用:7.深入理解使用原 ...

最新文章

  1. 原创 | 数据资产确权浅议
  2. Microsoft Bot Framework 上手
  3. matlab找数据的转账点,nodejs开发EOS转账服务的两种方案
  4. web前端入门学习 css(8)(新增语义化标签、video/audio、新增input类型、新增表单属性、属性选择器、结构伪类选择器、伪元素选择器、css3盒子模型、模糊、calc函数、过渡
  5. gcnew 与 new 的区别
  6. android path 合并_Android合并音频文件
  7. ui vue 创建项目教程 并关闭语法_使用vue ui命令创建vue项目步骤
  8. 儿童手表怎么删除联系人_儿童节来了,送孩子400多元的超值礼物,儿童手表9X评测分享...
  9. oracle 根据用户备份,Oracle基于用户的备份及恢复
  10. python+opencv中imread函数第二个参数的含义
  11. 【BZOJ2324】营救皮卡丘,费用流
  12. paip.android 手机输入法制造大法
  13. C#连接oracle数据库提示ORA-12154: TNS: 无法解析指定的连接标识符
  14. 模板方法模式(模板方法设计模式)详解——小马同学@Tian
  15. java mysql字符串拼接_Oracle与MySQL字符串拼接
  16. python基础(一):入门必备知识
  17. 计网习题总结,附答案
  18. JAVA除数为0报错?
  19. js实现鼠标滚轮缩放图片
  20. In-Class Essay结构范文分享

热门文章

  1. expdp导出数据库实例应用
  2. POJ1144:Network(无向连通图求割点)
  3. Zend Framework中,执行自定义sql语句
  4. 中英字体不同导致的下划线不对齐问题
  5. 联想笔记本降万元抢学生市场,兄弟们快抢啊
  6. [原创] Debian9上配置Samba
  7. (牛客腾讯思维编程题)编码编码分组打印下标题目分析
  8. 如何更好的创建Java对象
  9. vue-cli脚手架项目构成
  10. Windows server2008 搭建ASP接口访问连接oracle数据库全过程记录--备用