1,本节课开始进入 C++ 中的面向对象,面向对象是 C++ 中最核心也是体现 C++ 价   值的一个部分;

2,日常生活当中我们都习惯对事物进行分类,那么这种分类的思想是否可以引入到 程序设计中?

1,可以;

2,面向对象就是将分类的思想直接引入到程序设计当中;

3,面向对象的意义在于:

1,将日常生活中习惯的思维方式引入程序设计中;

1,避免错误;

2,顺序、选择、循环这三种 C 中的编程泛型不能满足非科学计算中的软件开发问题,引来了软件灾难;

2,将需求中的概念直观的映射到解决方案中;

1,引起软件灾难的原因就是需求变更;

2,少许的需求改变对应着少许的软件更改;

3,将分类的思想引入到软件设计中,获得成功,由此面向对象诞生;

3,以模块为中心构建可复用的软件系统;

4,提高软件产品的可维护性和可扩展性;

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

1,类:指的是一类事物,是一个抽象的概念;

1,类是一个类别,抽象的;

2,对象:指的是属于某个类的具体实体;

3,类是一种模型,这种模型可以创建出不同的对象实体;

1,模型存在不一定存在实体;

2,实体存在则一定存在模型;

4,对象实体是类模型的一个具体实例;

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

1,语言分为程序设计语言和自然语言两个类;

2,程序设计语言和自然语言又能够分别分类;

6,生活中的类和对象:

1,将分类思想带入程序设计中,这很重要;

7,类和对象的意义:

1,类用于抽象的描述一类事物所持有的属性和行为;

1,如:电脑有 CPU、内存和硬盘,并且可以开机和运行程序;

2,对象是具体的事物,拥有所属类中描述的一切属性和行为;

1,不同的对象属性和行为上有差异;

2,每一只老虎都有不同的体重,不同食量以及不同的性情;

3,每一个子类对象都拥有父类的一切属性和行为,因为其也属于父类;

8,一些有趣的问题:

1,类一定存在实际的对象吗?

1,不一定,纯虚类;

2,类是分别出来的,恐龙类就没有对象;

2,类的对象数目是确定的吗?

1,不一定;

2,老虎的数目是不确定的;

3,皇帝这个类对象数只有一个;

3,类一定都来源于现实生活中吗?

1,不一定,纯虚类;

4,类都是独立的吗?类之间存在关系吗?

1,不都是独立的,类之间可以继承也可以组合;

5,对象实例一定只属于一个类吗?

1,不一定,其也属于这个类的父类;

2,多重继承;

6,对象实例可能完全相同吗?

1,不可能;

2,不可能出现两个完全相同的树叶;

9,小结:

1,面向对象是当今软件开发中的重要方法;

2,类和对象是面向对象理论中的基本概念;

3,类和对象均来源于日常生活中;

4,每个类可以有多个对象;

5,每个对象必然属于某个类;

C++中的面向对象(一)的更多相关文章

  1. 前端开发:面向对象与javascript中的面向对象实现(二)构造函数与原型

    前端开发:面向对象与javascript中的面向对象实现(二)构造函数与原型 前言(题外话): 有人说拖延症是一个绝症,哎呀治不好了.先不说这是一个每个人都多多少少会有的,也不管它究竟对生活有多么大的 ...

  2. 简单分析JavaScript中的面向对象

    初学JavaScript的时候有人会认为JavaScript不是一门面向对象的语言,因为JS是没有类的概念的,但是这并不代表JavaScript没有对象的存在,而且JavaScript也提供了其它的方 ...

  3. 前端开发:面向对象与javascript中的面向对象实现(一)

    前端开发:面向对象与javascript中的面向对象实现(一) 前言: 人生在世,这找不到对象是万万不行的.咱们生活中,找不到对象要挨骂,代码里也一样.朋友问我说:“嘿,在干嘛呢......”,我:“ ...

  4. Java语言中的面向对象特性总结

    Java语言中的面向对象特性 (总结得不错) [课前思考]  1. 什么是对象?什么是类?什么是包?什么是接口?什么是内部类?  2. 面向对象编程的特性有哪三个?它们各自又有哪些特性?  3. 你知 ...

  5. 浅谈Objective—C中的面向对象特性

    Objective-C世界中的面向对象程序设计 面向对象称程序设计可能是现在最常用的程序设计模式.如何开发实际的程序是存在两个派系的-- 面向对象语言--在过去的几十年中,很多的面向对象语言被发明出来 ...

  6. Java中的面向对象

    Java中的面向对象 在软件开发的学习中, 我最先接触的开发语言就是java,但都是简单的函数和循环数组的应用.说道面向对象,第一次看到这个词的时候还是在C#的学习过程中,我记得当时PPT上霸气的解释 ...

  7. Cocos2d-x 脚本语言Lua中的面向对象

    Cocos2d-x 脚本语言Lua中的面向对象 面向对象不是针对某一门语言,而是一种思想.在面向过程的语言也能够使用面向对象的思想来进行编程. 在Lua中,并没有面向对象的概念存在,没有类的定义和子类 ...

  8. lua中的面向对象编程

    简单说说Lua中的面向对象 Lua中的table就是一种对象,看以下一段简单的代码: 上述代码会输出tb1 ~= tb2.说明两个具有相同值得对象是两个不同的对象,同时在Lua中table是引用类型的 ...

  9. 深入解读 Js 中的面向对象编程

    前言:今天看了一篇文章觉得很不错,所以给大家分享一下,也许很多人都看过面向对象编程甚至写过这样博客,觉得面向对象编程就那样,没啥好说的,那可能是因为你对这方面知识已经了解,可以选择性跳过.那如果有更通 ...

  10. Golang 入门系列(五)GO语言中的面向对象

    前面讲了很多Go 语言的基础知识,包括go环境的安装,go语言的语法等,感兴趣的朋友可以先看看之前的文章.https://www.cnblogs.com/zhangweizhong/category/ ...

随机推荐

  1. 67.Task Scheduler(任务规划)

    Level: Medium 题目描述: Given a char array representing tasks CPU need to do. It contains capital letter ...

  2. 20191108PHP数组查找练习

    <?php $arr=[20,30,60]; $new=array(22,"tom"=>33); echo $arr[2]; echo $new['tom']; for ...

  3. 记录使用node启用微信公众平台服务器配置

    在微信公众平台的基本信息里面的,修改服务器配置后会有下面的界面. EncodingAESKey是随机生成的,加密方式根据需要自己选择. 关于URL和Token: URL:填写之后会向这个URL发送一个 ...

  4. Java实现二分法(折半)查找数组中的元素

    二分查找 算法思想:又叫折半查找,要求待查找的序列有序.每次取中间位置的值与待查关键字比较,如果中间位置的值比待查关键字大,则在前半部分循环这个查找的过程,如果中间位置的值比待查关键字小,则在后半部分 ...

  5. Git--02 Devops介绍及git安装部署

    目录 1. Devops介绍 01. 运维介绍 02. Devops是什么 03. Devops能干嘛 04. Devops如何实现 2. Git版本控制系统 01. 版本控制系统简介 02. 为什么 ...

  6. squid代理与缓存(下)

    squid代理与缓存(下) 6. squid代理模式案例 6.1 squid传统正向代理生产使用案例 6.1.1 squid传统正向代理两种方案 (1)普通代理服务器 作为代理服务器,这是SQUID的 ...

  7. source insight 4.0.86.0安装破解问题

    source insight 4.0.86.0安装过程中碰到导入lic文件一直不正确 解决办法: 需要将SourceInsight\SW_Install\SI4安装及破解文件 目录下的sourcein ...

  8. Codeforces 958C3 - Encryption (hard) 区间dp+抽屉原理

    转自:http://www.cnblogs.com/widsom/p/8863005.html 题目大意: 比起Encryption 中级版,把n的范围扩大到 500000,k,p范围都在100以内, ...

  9. python基础:6.python最大的递归层数

    python解释器版本:3.7 def recursion(n): print(n) n += 1 recursion(n) recursion(1) # maximum recursion dept ...

  10. 算法 识别有效ip地址和掩码并做统计

    题目描述 请解析IP地址和对应的掩码,进行分类识别.要求按照A/B/C/D/E类地址归类,不合法的地址和掩码单独归类. 所有的IP地址划分为 A,B,C,D,E五类 A类地址1.0.0.0~126.2 ...