OOP介绍.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文档。上传文档
查看更多
OOP介绍

Java中面向对象特性和技术 薛 峰 iamxuefeng@163.com Outline of Today’s Topic 面向对象(Object-Oriented Program)技术概述 OOP的基本概念 OOP的技术细节 OOP的三大特征——封装、继承、多态 抽象类、接口 Inner Class 面向对象技术概述——OOP的历史背景 面向对象技术概述——OOP的历史背景 面向对象技术的形成与发展 OOP的基本概念 基本思想:一切都是对象… 两个概念:对象、类 OOP的基本概念 基本思想:一切都是对象… 两个概念:对象、类 OOP的技术细节1——类定义的基本语法 Java中类的定义格式: OOP的技术细节2——类定义的基本语法 成员变量的定义格式: OOP的技术细节2——类定义的基本语法 成员方法的定义格式: OOP的技术细节2——构造方法 OOP的技术细节3——对象的生命周期 OOP的三大特征1——封装 封装起源于结构化编程中模块化编程思想; Java中对象就是一组变量和方法的封装。 封装实现了使用者和设计者的分离,提高了程序的重用性 封装的粒度(类、属性、方法) OOP的三大特征1——封装 类的可见性——public class; Java中对象就是一组变量和方法的封装。 封装实现了使用者和设计者的分离,提高了程序的重用性 封装的粒度(类、属性、方法) 封装的举例——学驾车、电子放大器 OOP的三大特征1——封装 类的成员的可见性——public, protected, package, private OOP的三大特征2——继承(基本概念) 继承是OOP中从一个已有的类获得新的类的机制; Java中仅支持类的单重继承; 子类继承(extends)父类、父类派生(derive)子类 OOP的三大特征2——继承(基本特性) OOP的三大特征2——继承(基本特性) 子类可以自动拥有父类中的非私有的成员属性和成员方法; 子类也可以重新定义父类中同名的属性(变量的隐藏)和方法(方法的覆盖、重载); 关于方法的重载(overloading) this, super关键字 在子类的构建器中,Java会自动插入父类无参数构建器的调用; OOP的技术细节2——继承(类的初始化顺序) 总是先初始化父类的成员; 总是先初始化static成员; 总是先初始化变量,后初始化方法; B2.java OOP的技术细节3——多态(多态的基本概念) 所谓的多态(Polymorphism ):一种方法形式,多种表现形态; 多态习惯性被可分为:编译时多态、运行时多态; 编译时多态:方法名相同、参数表不同(伪多态); 运行时多态:运行时,根据对象的具体类型不同决定调用什么形式的方法。(将一条消息发给一个对象,让对象自行判断要做什么事情) 运行时多态是Java动态特性的典型体现; OOP的技术细节3——多态(运行时多态) 运行时多态的两个前提:上溯造型(Upcasting)和方法重写(Overriding); 上溯造型:取得一个子类对象,将其地址赋给父类型的引用; Automobile a = new Car(); 方法重写:子类重新定义父类中的方法(方法返回值、方法名、方法参数表); 运行时多态举例 Music2.java; OOP的技术细节3——重载和重写 方法的重载(Overloading):几个方法的方法名相同,参数表不同,称为方法的重载; 方法的重写(Overriding):子类重新定义父类中的已经定义的方法(方法名、参数表、返回值完全相同) 方法重载一般发生在一个类的内部,而方法的重写一般是发生在父子类之间: 方法重写的两条规则:1)子类重新定的方法不能比父类中的方法有更严格的访问权限;2)子类重新定义的方法不能比父类的方法传递更多的异常; 抽象类(abstract class)——基本语法 语法形式: 使用abstract修饰的类叫做抽象类, 使用abstract修饰的方法叫做抽象方法; 抽象类不能实例化对象,只能作为父类派生子类; 抽象类不一定包含抽象方法(抽象类包含n个抽象方法,n=0),包含了抽象方法的类一定是抽象类; 抽象方法只有方法的声名,没有方法体,如: abstract double area(); 非 abstract方法中可以调用abstract方法; 抽象类(abstract class)——基本特性 由抽象类派生的非抽象子类必须实现父类中的所有抽象方法; 抽象类的意图:是为从它派生的所有子类创建一个通用接口; Music4.java; 思考:抽象类的作用体现在哪里?为什么要有抽象类? 接口(interface)——基本概念 接口是一个更“纯”的抽象类。(不能含有非ab

文档评论(0)

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

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

1亿VIP精品文档

相关文档