java期末复习课件第讲面向对象程序设计.ppt

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

* public static void main(String []args){ OverLoad o = new OverLoad(); System.out.println(o.sum()); System.out.println(o.sum(5,6)); System.out.println(o.sum(5,8,4)); System.out.println(o.sum(3.2,2.15)); } } * 4.4.2 方法重写(覆盖) 方法覆盖(override) 子类可以修改从父类继承来的行为 子类能创建一个与父类方法有不同功能的方法,但具有相同的名称、返回类型、 参数表。 子类也能创建一个与父类方法有不同功能的方法,但具有相同的名称,不同的参数表时,有不同的返回类型。 覆盖发生在子类与父类之间。 * class A { int i, j; A(int a, int b) { i = a; j = b; } // 输出i和j void show() { System.out.println(i and j: + i + + j); } } * class B extends A { // 创建一个类继承A. int k; B(int a, int b, int c) { super(a, b); k = c; } void show(String msg) { // 重写方法 show() System.out.println(msg + k); } } class Override { public static void main(String args[]) { B subOb = new B(1, 2, 3); subOb.show(This is k: ); // 调用B中的方法show() subOb.show(); // 调用 A中的方法show() } } * 超类中的方法仅当实例可访问时的,才可被重写 如果重新定义超类中的静态方法,则超类中的方法被屏蔽。 * 4.4.3 重写的方法支持多态性 方法覆盖形成了动态方法分配,实现运行时的多态性。 示例:DynDispDemo.java 方法覆盖实现多态性的 “单界面,多方法” * 4.4.4 方法覆盖的约束条件 子类方法的名称、参数签名和返回类型必须与父类方法的名称、参数签名和返回类型一致。 public class Base { public void method() {…} } public class Sub extends Base{ public int method() { //编译错误,返回类型不一致 return 0; } } * 方法覆盖的约束条件 子类方法不能缩小父类方法的访问权限,但可以扩大访问权限 public class Parent { public void method() { } } public class Child extends Parent { private void method() { //编译错误 } } * 方法覆盖的约束条件 子类方法不能抛出比父类方法更多的异常 class ExceptionA extends Exception{} class ExceptionB extends ExceptionA{} class ExceptionC extends ExceptionB{} public class Parent { void method() throws ExceptionB{} } public class Child1 extends Parent { void method()throws ExceptionA {} //非法 } public class Child2 extends Parent { void method()throws ExceptionC {} //合法 } * 小结 1. 超类和子类的关系,掌握它们在继承中的应用; 2.理解方法重载和方法重写的区别和使用方法; * 课外任务 1. 根据大作业的要求,分析问题中所需的类,确定类与类之间的关系,并定义这些类。 2. P130. 6-1 * 3. 设计点-圆-圆柱体层次的类Point、Circle、Cylinder。其中Point类中含有privte的实例变

文档评论(0)

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

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

1亿VIP精品文档

相关文档