- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
4面向对象高级
第四章 面向对象的概念和 Java 实现 回顾 类是具有相同属性和行为的一组对象的集合 ,对象是类的实例 封装是隐藏对象实现细节的过程,以便不让用户看到实现的细节 类可用Class来定义,类的变量和方法可被该类的实例访问,圆点符号用于访问对象的成员,构造函数在创建对象时初始化对象 包可用package来申明 ,可用import 来导入包 本章目标 继承 继承的特点 用java实现继承 子类构造方法 子类构造方法 //父类的构造方法先于子类的构造方法被调用 class Author{ Author(){ System.out.println(在Author类中); } } class FictionAuthor extends Author{ FictionAuthor(){ System.out.println(在FictionAuthor类中); } } public class TestAuthor{ public static void main(String[] args){ FictionAuthor objF = new FictionAuthor(); } } 子类构造方法 调用父类构造方法的语法为: super() 或 super(参数列表) ; super () 方法始终指向调用类的父类 何时使用继承 代码重用,减少重复量 设计重用: 公有的字段放在父类中,子类来继承使用,子类有它自己的 字段和方法 经验而言: ----”is a ”的关系 如果A是B的子类 多态性 多态性是指“多种形式” 它使用不同的实例而执行不同操作 多态包括方法重写和方法重载 方法重载:方法有不同的版本,在编绎时 同一类中方法名必须相同,参数必须不同,返回值可以不相同 方法重写:运行时重写改写: 继承关系的类中的方法名,参数, 返回值都相同 效果:父类中的方法被子类中的方法所覆盖,也就是父类中的方法被子类中的方法重新改写 方法重载 方法重载例子 演示:示例 4 方法重写 方法重写 小结 1.请编码实现如下需求: 乐器(Instrument)分为:钢琴(Piano)、小提琴(Violin) 各种乐器的弹奏( play )方法各不相同。 2.编写一个测试类InstrumentTest,要求: 编写方法testPlay,对各种乐器进行弹奏测试。要依据乐器的不同,进行相应的弹奏。 在main方法中进行测试 继承多态举例 说明一下 访问修饰符 信息隐藏是 OOP 最重要的功能之一,也是使用访问修饰符的原因 信息隐藏的原因包括: 对任何实现细节所作的更改不会影响使用该类的代码 防止用户意外删除数据 此类易于使用 访问修饰符 访问修饰符 访问修饰符可访问性 修饰符 static 修饰符 static修饰符可以修饰: 类变量 方法 static修饰符修饰的方法叫静态方法(类方法) static修饰符修饰的变量叫静态变量(类变量) 目的 使该方法独立于类的实例,直接使用类名去访问,而不是类实例(对象),所以也叫类方法或类的静态变量 静态变量 不管创建了类的多少实例,整个类中静态变量的副本只有一个。 引用静态变量的方法: 通过引用类的任一实例 通过类的名称 静态方法 与静态方法相关的几个要点: 类的静态方法只能访问其他的静态成员 静态方法没有this 静态方法不能被覆盖为非静态方法 final 修饰符 final修饰符可以修饰: 类 变量 方法 abstract 修饰符 abstract修饰符可以修饰 类 方法 由abstract修饰的方法叫抽象方法;由abstract修饰的类叫抽象类 抽象方法必须声明在抽象类中 抽象方法语法: abstract type method_name(parameter_list); 声明抽象类语法: abstract class{…… } 使用:父类中的某些抽象不包含任何逻辑,并需要在子类中重写,子类提供这种抽象方法的实现细节 抽象类可以具有指向子类对象的对象引用 抽象类之间可以继承 接口 接口就是某个事物对外提供的一些功能的申明,提供的是编程的蓝图 可以利用接口实现多态,同时接口也弥补了Java单一继承的弱点 使用interface关键字定义接口 一般使用接口声明方法或常量,接口中的方法只能是声明,不能是具体的实现 创建接口的步骤 // 定义方法的接口 public interface myinterface { public void add(int x, int y); public void volume(int x,int y, int z); } // 定义程序使用的常量
文档评论(0)