收藏 分享(赏)

第4章 面向对象编程(多态、抽象类、接口) (new).ppt

上传人:tkhy51908 文档编号:9231523 上传时间:2019-07-30 格式:PPT 页数:16 大小:263.50KB
下载 相关 举报
第4章 面向对象编程(多态、抽象类、接口) (new).ppt_第1页
第1页 / 共16页
第4章 面向对象编程(多态、抽象类、接口) (new).ppt_第2页
第2页 / 共16页
第4章 面向对象编程(多态、抽象类、接口) (new).ppt_第3页
第3页 / 共16页
第4章 面向对象编程(多态、抽象类、接口) (new).ppt_第4页
第4页 / 共16页
第4章 面向对象编程(多态、抽象类、接口) (new).ppt_第5页
第5页 / 共16页
点击查看更多>>
资源描述

1、第4章 面向对象编程 (多态、抽象类、接口),一、多态,多态是面向对象的又一特点。 多态分为编译时多态和运行时多态 1. 编译时多态:由方法重载实现的静态多态见教材P114例4-23,2. 运行时多态:子类继承父类时产生子类的对象可以申明为父类的对象(向上转型)若父类是Father类,子类是Children类,可以这样声明:Father child;child=new Children();P115 例4-24 多态性使用之二(运行时多态),二、抽象类,1.定义 类前有abstract修饰时,称为抽象类。 声明格式如下:abstract class 类名称 成员变量;成员方法; 2.特点(1)

2、抽象类不能被实例化,实例的建立通常由其子类去完成。(2)抽象类中可以没有抽象方法,但包含有抽象方法的类一定是抽象类。,抽象方法:声明格式如下:abstract 返回值类型 方法名(参数列表);如:abstract void study(); (3)抽象类中的抽象方法必须全部由子类覆盖,否则子类继续被申明为抽象类 (4)抽象类及抽象方法不能被final修饰,三、最终类和最终方法,类前有关键字final时,表示该类是最终类 声明格式如下:final class 类名称成员变量;成员方法; 最终类不能作为父类被其它类继承,方法前有关键字final时,表示该方法是最终方法 声明格式如下: final

3、返回值类型 方法名(参数列表) 方法体; abstract、 final不能同时修饰类、成员方法,否 则将导致编译错误,说出下列程序语句错误原因:,1.public final class Aclass B extends A 2.public abstract final class A 3.public abstract class Kabstract final void aa();,五、接口,1、接口的申明 publicinterface 接口名 extends 父接口名列表 常量定义方法定义,说明: (1)接口中的成员变量都必须设置初始值,且默认为public、final、stati

4、c型。 (2)接口中定义的方法默认都是public、abstract类型的抽象方法。 如:interface Animalint i=5;/默认为public static finalvoid modelOfAction();/默认为public abstract ,(3)当接口由public修饰时,表示该接口是公共接口,可以被所有的类和接口使用,否则只能被同一包中的其它接口和类使用。 (4)保存接口时,其命名方法类似于保存类的文件命名方法,即保存接口的文件名必须与接口名相同。一个文件中可以有多个接口,但最多只有一个接口为public型,其它的接口默认。,2、接口的实现 类实现某接口,利用关键

5、字implements,如: 类修饰符class 类名称 extends 父类名 implements 接口名列表 变量的定义及初始化;方法的定义及方法体; ,几点说明: (1)一个类可以实现多个接口,在implements关键字后,逐个列出需要实现的接口名。 (2)一个类在实现接口中定义的所有的抽象方法时,必须与接口中定义的方法完全一致,即具有相同的方法名、参数列表和返回值。 (3)由于接口中的抽象方法默认都是public类型的,因此在类中实现方法时,方法名前必须写出public,否则会出错。 (4)接口与抽象类类似,不能被实例化,例:接口的实现interface Animalvoid mo

6、delOfAction();void speak(); class Fish implements Animalpublic void modelOfAction()System.out.println(“Fish can swim!“); public void speak()System.out.println(“Fish is bubbing!“); class Bird implements Animalpublic void modelOfAction()System.out.println(“Bird can fly!“); public void speak()System.ou

7、t.println(“Bird is singing!“); 子类实现接口中的方法必须使用public;,3、接口的继承 一个接口不能实现另一个接口,但可以继承多个接口 如: interface Aint methodA(); interfaceBint methodB(); interface C extends A,B/接口C称为复合接口int methodC(); 子类除了实现父接口中的抽象方法,还必须实现间接父 接口中的抽象方法,否则,该类只能成为抽象类。 如:,class MyClass implements Cpublic int methodC()return c; public int methodB()return b;public int methodA()return a;,系统定义的接口见教材p125,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报