7 面向对象程序设计方法和思想.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
7 面向对象程序设计方法和思想.ppt

第7章 面向对象程序设计方法和思想 假设还想掌握 *学生(结构中那个表格)的练武情况,这我们需要定义函数: 练武当然还有武功秘籍呢,所以: 再来看练武的那个函数,修改成: 某一天,该班插班进来一个人,自称是张无忌传人,得到了无忌的真传,并且还有很对师傅不会的他也会….. 于是我们又要修改函数…….再招收到了他的传人的传人……第N代传人… 结构化编程的缺点(个人观点,无统一的表述): 写法不自然,不符合高级语言的特点 无法强制进行初始化 数据和操作数据的函数分离,修改数据或者修改函数容易导致错误 软件无法方便地重用….. 面向对象的基本概念 对象 现实中存在的一个事物,可以是实际存在的也可以是无形的 类 对象的归类,描述这些对象的共同特征, 对象和类的概念解析 先有对象还是先有类 类的定义方式 封装(信息隐藏) 将数据和操作这些数据的函数”包装”在一起,并且可以设置这些数据的访问权限。 继承 多态 多态 面向对象程序设计语言 C++、JAVA Ada、Smalltalk ….. 面向对象是一种思想,一种程序设计方法 华南师范大学计算机学院 庞雄文 * **学校高级班学生成绩表 95 95 90 60 1999 女 黄蓉 6 82 57 90 92 1999 女 小师妹 5 90 87 95 78 1999 男 张无忌 4 66 98 72 89 1999 男 虚竹 3 78 88 92 78 1999 男 段誉 2 82 72 83 90 1999 男 乔峰 1 音 乐 数 学 英 语 计算机原理 入学时间 性别 姓名 学号 如何用计算机程序实现上述表格的管理? 数组的解决方法 int studentId[30]; /* 最多可以管理30个学生, 每个学生的学号用数组的下标表示*/ char studentName[10][30]; char */ int scoreMusic[30]; /*音乐课的成绩*/ 数组的解决方法 int studentId[30] = {1,2,3,4,5,6}; char studentName[10][30] = {{“乔峰”},{“段誉”},{“虚竹”}, {“张无忌”},{“小师妹”},{“黄蓉}}; char studentSex[2][30] = {{男},{男},{女},{女}}; int timeOfEnter[30] = {1999,1999,1999,1999}; int scoreComputer[30] = {90,78,89,78}; int scoreEnglish[30] = {83,92,72,95}; int scoreMath[30] = {72,88,98,87}; int scoreMusic[30] = {82,78,66,90}; 数组的解决方法 数组方式存在的问题 (1) 分配内存不集中,寻址效率不高 (2) 对数组进行赋初值时,容易发生错位 (3) 结构显得比较零散,不容易管理 1 乔峰 男 1999 90 83 72 82 2 段誉 男 1999 78 92 88 78 3 小师妹 女 1999 89 72 98 66 4 黄蓉 女 1999 78 95 87 90 结构的表示方法 在成绩管理系统中,每个人均有各门课程的成绩,同时还有名字、学号等信息,因此在系统中,每位同学应作为一个整体 这就是面向对象的启蒙看法: 面向对象,是为了让我们把程序写得更“自然”。越是支持面向对象的编程语言,我们就越能以接近人类自然逻辑的思路来设计程序;而越不支持面向对象的编程语言,也许它初看起来似乎很浅显易用,但当用它来解决实际问题时,程序员就不得不受限于这门语言特有的解决问题的思路 结构的表示方法 把同属于一个整体的“数据”,归成一个新的类型去考虑,而不是分割成每一部分。 “结构”提供一种能力,允许程序员把多个数据类型,归属成一个完整的,新的数据类型 struct studentGrade { int studentId; //学号 char studentName[10]; //姓名 char studentSex[2]; //性别 int timeOfEnter; //入学时间 int scoreComputer; /计算机原理课的成绩*/ int scoreEnglish; //英语课的成绩*/ int scoreMath; //数学课的成绩*/ int scoreMusic; //音乐课的成绩*/ }; 结构的表示方法 引入面向对象的思想 练武(***人,***功) 如果需要调用

文档评论(0)

5566www + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:6122115144000002

1亿VIP精品文档

相关文档