网站大量收购独家精品文档,联系QQ:2885784924

第二章继承资料.ppt

  1. 1、本文档共41页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第二章继承资料

* * * * * * * * * * * * * * * * * * 继承 第五节 继承 方法覆盖 对象创建过程 super关键字 抽象类与抽象方法 final关键字 抽象类概述和语法 1、有些类并不能真正的描述一个具体的对象,只是将子类相似的特点抽象出来而形成了一个抽象模板。这种类被称为抽象类。 2、 在Java中,通过关键字abstract来声明抽象类 3、抽象类的语法: abstract class 抽象类名 { } 演示示例 abstract class Animal{ public abstract void eat(); } public class Tiger extends Animal{ @Override public void eat(){ System.out.println(老虎吃肉); } public static void main(String[] args){ Tiger t = new Tiger(); t.eat(); } } 使用abstract修饰动物类 定义抽象方法 重写的抽象方法 打印结果 老虎吃肉 小结 抽象方法的特点: 1、只有方法的声明,没有方法的实现。以分号结束 2、含有抽象方法的类,必须声明为抽象类 抽象类的特点: 1、抽象类不能被实例化(不能创建抽象类的对象) 2、抽象类的子类必须重写父类中所有的抽象方法,否则子类依然为抽象类 3、抽象类中可以包含普通的属性、方法、构造方法(用于提供给子类调用) 4、抽象类中可以没有抽象方法,但是抽象方法只能存在于抽象类中 abstract int abstractMethod(int a); 学员操作 1、编写一个Employee类,声明为抽象类: 1)包含如下三个属性:name,id,salary。 2)提供必要的构造方法和抽象方法:work()。 2、设计CommonEmployee类和Manager类,要求类中提供必要的方法进行属性访问: 1)对于Manager类来说,他既是员工,还具有奖金(bonus)的属性 3、将前面定义的“人类”修改为抽象类,其中的方法改为抽象方法,并由客户类、管理员类分别进行实现 * 继承 第六节 继承 方法覆盖 对象创建过程 super关键字 抽象类与抽象方法 final关键字 final的概述 为了提高程序的安全性,Java中提供了fianl修饰符,来修饰类、变量、方法等。 final翻译为最终的,表示不可改变的。 final的语法 1、final修饰类: 1)表示该类不能被继承 例如:String类就是这种情况 2、final修饰变量: 1)表示该变量只能被赋值一次 2)成员变量 、局部变量都可以使用final修饰 3)必须手工为变量赋值一次(包括成员变量,如果赋默认值,没有任何意义) 3、final修饰方法: 1)表示该方法不能被覆盖 演示示例 final class A{ } class B extends A{ } 错误,final类不能被继承 class A{ public final void show(){ System.out.println(A); } } class B extends A{ @Override public void show(){ System.out.println(B); } } 错误,final方法不能被覆盖 演示示例 class A{ private final String MONDAY = 星期一; public A(){ MONDAY = 周一; } final String TUESDAY; } 声明常量: 常量名要大写,内容不可修改 错误 错误 演示示例 class A{ public A(final int i){ i = 12; } } 错误 提问 1、final修饰符可以修饰哪些成份? 分别有什么作用? 2、使用final时,需要注意什么? * 学员操作 1、下列程序是否能编译通过?如果可以,输出运行的结果;如果不可以,应该怎样修改? * public class Super { publi

文档评论(0)

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

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

1亿VIP精品文档

相关文档