JSE-07面向对象编程下.pptx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第6章 面向对象编程(下);本章内容;第一节 类的继承;面向对象特征之二:继承;示 例—Employee类;继 承(2) ;示 例—Manager类;为什么要有继承? 多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些属性和行为,只要继承那个类即可。提高了代码的复用性。 继承的出现让类与类之间产生了关系,可以创建更为特殊的类型。 利于可维护性。 此处的多个类称为子类,单独的这个类称为父类(基类或超类)。可以理解为:“子类 is a 父类” 类继承语法规则: class Subclass extends Superclass{ };类的继承 (4);类的继承 (5);练 习;继承中的私有成员;示 例—Employee类;示 例—Manager类;示 例—Test类;练 习;练 习; 方法的重写(override);示 例—Employee类;示 例—Manager类;示 例—Test类;在PC类中,覆盖getDetails方法,方法返回PC机的详细信息。 在Test类中调用getDetails方法,确认输出结果。;;访问控制分析; 关键字super;示 例—Employee类;示 例—Manager类;示 例—Test类;在PC类中,改写的覆盖getDetails方法,使用super调用。 在Test类中调用getDetails方法,确认输出结果。;调用父类的构造器;示 例—Employee类;示 例—Manager类;示 例—Test类;示 例—Employee类;示 例—Manager类;示 例—Test类;This和super的区别;思考: 1).为什么super(…)和this(…)调用语句不能同时在一个构造器中出现? 2).为什么super(…)或this(…)调用语句只能作为构造器中的第一句出现?;示 例—Employee类;示 例—Manager类;示 例—Test类;练 习;综合练习;第二节 多 态; 面向对象特征之三:多态性;示 例—Person类;示 例—Student类;示 例—Student类;多态性(2);多态性(3);虚拟方法调用(Virtual Method Invocation);多态小结;练习:继承成员变量和继承方法的区别;子类继承父类 若子类重写了父类方法,就意味着子类里定义的方法彻底覆盖了父类里的同名方法,系统将不可能把父类里的方法转移到子类中 对于实例变量则不存在这样的现象,即使子类里定义了与父类完全相同的实例变量,这个实例变量依然不可能覆盖父类中定义的实例变量;对象引用类型转换 (Casting );对象类型转换举例;较高级的基本数据类型;多???数组;多态数组示例;多态数组示例;示 例—Person类;示 例—Student类;示 例—Teacher类;示 例—Test类;练 习;5;88;多态应用(2)——多态参数;示 例—Test类;练 习;instanceof 操作符;示 例—Test类;练 习;第三节 对象关联与Object类;对象的关联;示 例—Teacher类;示 例—Person类;示 例—Computer类;示 例—Test类;练 习; Object 类;Object类中的主要方法;==操作符与equals方法;==操作符与equals方法;int it = 65; float fl = 65.0f; System.out.println(“65和65.0f是否相等?” + (it == fl)); //true char ch1 = A; char ch2 = 12; System.out.println(65和A是否相等? + (it == ch1));//true System.out.println(“12和ch2是否相等? + (12 == ch2));//true String str1 = new String(hello); String str2 = new String(hello); System.out.println(str1和str2是否相等?+ (str1 == str2));//false System.out.println(str1是否equals str2?+(str1.equals(str2)));//true System.out.println(“hello” == new java.sql.Date()); //编译不通过;Person p1 = new Person(); p1.name = atguigu; Person p2 = new Person(); p2.name = a

文档评论(0)

a13355589 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档