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

Java语言程序设计4章.ppt

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

第4章 继承和多态 计算机与信息工程分院 本次内容 一、类的继承 一、类的继承 一、类的继承 一、类的继承 一、类的继承 一、类的继承 一、类的继承 一、类的继承 一、类的继承 一、类的继承 一、类的继承 一、类的继承 一、类的继承 成员变量的隐藏 重写父类的方法 重载和重写 Super_1 Super_1续 如果子类没有包含和父类同名的属性,则子类则可以继承到父类属性。 Super_2 Super_2续 Super_2续 二、方法的多态性 二、方法的多态性 二、方法的多态性 三、抽象类和最终类 三、抽象类和最终类 三、抽象类和最终类 三、抽象类和最终类 三、抽象类和最终类 三、抽象类和最终类 三、抽象类和最终类 三、抽象类和最终类 finaldata finalmethod 四、接口 接口(interface): 更彻底的抽象(totally abstract class) 不能包含普通方法,而全部都是抽象方法 四、接口 四、接口 四、接口 四、接口 四、接口 四、接口 四、接口 Case:jiekou.java Case:Adventure.java Case:store.java 接口的定义 接口的继承 Jiekou.java 谢 谢! 计算机与信息工程分院 1、抽象类(5) public class Circle extends Shape{ public double radius; public Circle(String color , double radius) { super(color); this.radius = radius; } public double calPerimeter() {return 2 * Math.PI * radius; } public String getType() {return getColor() + 圆形; } public static void main(String[] args) { Shape s1 = new Triangle(黑色 , 3 , 4, 5); Shape s2 = new Circle(黄色 , 3); System.out.println(s1.getType()); System.out.println(s1.calPerimeter()); System.out.println(s2.getType()); System.out.println(s2.calPerimeter()); } } 调用父类(抽象类)的构造函数 重写父类的抽象方法 编译时类型和运行时类型不一样,多态发生 利用抽象类和抽象方法的优势,可更好的发挥多态的优势,使程序更加灵活。 1、抽象类(6) 抽象:从多个具有相同特征的类中抽象出一个抽象类,以这个抽象类作为其子类的模板,从而避免了子类设计的随意性。 抽象类体现的是一种模板模式的设计。 2、最终类(1) 不可改变 ①final变量 表示该变量一旦获得了初始值之后就不可改变 final修饰成员变量 final修饰局部变量 不可被重写,如果出于某些原因,不希望子类重写父类的某个方法,则可以使用final修饰该方法 ②final方法 2、最终类(2) 最终类是指不能被继承的类,即不能再用最终类派生子类。例如: public final class C 如果创建最终类似乎不必要,而又想保护类中的一些方法不被覆盖,可以用关键字final来指明那些不能被子类覆盖的方法,即最终方法。 返回主菜单 ③final类 返回 class Value{ int i=1; } public class Finaldata{ final int i1=9; static final int i2=99; public static final int i3=999; final int i4=(int)(Math.random()*20); static final int i5=(int)(Math.random()*20); Value v1=new Value(); final Value v2=new Value(); static final Value v3=new Value(); final int[] a={1,2,3,4,5}; public static void main(String[] args){ final double d; d=5.6; d=3.4; } } 返回 public class FinalMethod{ } class Sub extends FinalMethod

文档评论(0)

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

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

1亿VIP精品文档

相关文档