Java语言程序设计 高职软件专业 赵景晖 迟勇 课件第五章 面向对象基础.pptVIP

Java语言程序设计 高职软件专业 赵景晖 迟勇 课件第五章 面向对象基础.ppt

  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文档。上传文档
查看更多
第五章 本章目标: 5.1 OOP基本思想 使用面向对象的思想来设计程序 例5-1:用面向过程的C语言实现两数相加 例5-2:用带过程化的面向对象C++语言实现 例5-3:用纯面向对象Java语言实现 三个例程的结果相同,都是:7 11 例5-1:用面向过程的C语言实现两数相加 #includestdio.h int sum(int x,int y) { return x+y; }; void main() { int a=3,b=4,c=5,d=6; printf(a+b=%d\n,sum(a,b)); printf(c+d=%d\n,sum(c,d)); } 例5-2:用带过程化的面向对象C++实现 #includeiostream.h class Calculate { public: int sum(int x,int y) { return x+y; } }; void main() { int a=3,b=4,c=5,d=6; Calculate obj; coutobj.sum(a,b)endl; coutobj.sum(c,d)endl; } 例5-3:用纯面向对象Java语言实现 class Calculate { int sum(int x,int y) { return x+y; } public static void main(String[] args) { Calculate obj=new Calculate(); int a=3,b=4,c=5,d=6; System.out.println(obj.sum(a,b)); System.out.println(obj.sum(c,d)); } } 5.1.2 类与对象 类和对象是OOP中最基本的两个概念,其实它们是比较好理解的,简而言之,类是对象的模板,对象是类的具体实现. 实例化是将类的属性设定为确定值的过程,是“一般”到“具体”的过程; 抽象是从特定的实例中抽取共同的性质以形成一般化概念的过程,是“具体”到“一般”的过程。 关于“类”: 类是具有共同属性和行为的对象的抽象 类可以定义为数据和方法的集合 类也称为模板,因为它们提供了对象的基本框架 类是对象的类型,在语句中相当于数据类型使用 关于“对象” ,具有两方面的含义: 在现实世界中:是客观世界中的一个实体 在计算机世界中:是一个可标识的存储区域对象相当于变量 5.1.3 OOP基本特性 1. 封装(Encapsulation) 把类中的一些描述细节隐藏内部,用户只能通过接口来访问类中的内容,这种组织模块的方式称为“封装”。 封装是一种信息隐藏的技术,用户在访问对象的时候,只能看到对象表面上的东西,它们是留给用户访问对象的接口(简称API:Application Program Interface),而内部的信息,外界用户是不能直接访问的,这就保证了类中数据不会被意外篡改。(实例演示) 2. 继承(Inheritance) 为了代码复用,OOP语言允许一个类(子类)使用另一个类(父类)的属性和方法,这种子类使用父类属性和方法的特性称为“继承”。反之则称为“派生”。 例如:公司的雇员(Employee)派生为销售员(Saler)和部门经理(Manager)两类,销售经理(Sale_Manager)又继承了销售员和经理两个类的共同特征。如图1所示: 继承方式可以分为单继承和多继承(又称多重继承) 如果一个子类只继承自一个直接父类,就称为单继承。单继承又可以分为:单层继承和多层继承 如果一个子类同时继承自多个父类,就称为多继承。 Animal类就是Mammal类的直接基类,是Tiger类的间接基类(Java中都可称为“超类”); Tiger类是Mammal类的直接子类,是Animal类的间接子类。如图2所示: 如图1所示: 如图2所示: 3. 多态(Polymophism) “多态” (Polymophism)在编程上,简单讲就是“类的不同对象可以对同一个消息作出不同的响应”。比如H2O在不同温度下可能是固态、液态或者气态。 对象之间通过发送消息来传递信息,那么消息中应该包含三个方面的信息: 1) 要接收消息的对象 2) 接收对象应操作的方法 3) 方法中需要的参数 那么为什么编程语言要引入多态呢?多态

您可能关注的文档

文档评论(0)

时间加速器 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档