第3章类_接口_4.pptVIP

  • 6
  • 0
  • 约5.17千字
  • 约 27页
  • 2016-08-11 发布于重庆
  • 举报
第3章类_接口_4

面向对象的程序设计 第三章 类 提问 1、什么是抽象类? 2、抽象类如何实现? 2、多态的几种表现形式? 实例2 exten_super_in_one\SuperDemo UML图 作业问题:类的成员是类对象(p145 1,3) 目标 最终类 接口 Java中的接口举例 最终类 如果一个类没有必要(或使其不能)再派生子类时,通常将该类用final关键字修饰,表明它是一个最终类。最终类是处在类的层次结构中最底层的类。 用final修饰的类通常是有固定作用、完成一定标准功能的类,例如Java类库中的数学类(Math)等,该类中封装了数学中的一些常用的数学常量,以及常用数学方法,它们都是完成确定和标准功能的一些方法,Math类已没有必要再派生任何子类,因此Java中将该类定义为final类。 public final class Math extends Object 接口 概念:是用来实现类似多种继承功能的一种结构,他有自己的 属性和方法,接口间也可以形成继承关系。 与类的区别: 属性都是静态常量 方法都是抽象方法 public static final String name=“123”; Public abstract void show(); ◆ 接口是定义了一组对外的公共接口。 接口的定义格式: [public] interface 接口名称[extends 父接口名列表]{ //静态常量 [public static final] 数据类型 常量名=初值;//数据成员必须初始化 // 抽象方法 [public abstract] 返回值类型 方法名([参数表]); } 接口与抽象类的区别 接口中不能有非抽象的方法,但抽象类中可以有 一个类能实现多个接口,但只能有一个父类 接口并不属于继承结构,它实际与继承无关,无关的类可以实现同一个接口 定义接口 public interface myinterface{ public static double price = 875.00; //省略了final public static final int counter = 555; public void add(int x,int y); //省略了abstract public void volume(int x,int y,int z); //省略了abstract } 说明:接口中的所有常量必须是public static final, 方法必须是public abstract,这是系统默认的, 所以在定义接口时这些修饰符可以省略 实现接口 1、接口只包含抽象方法,不能用new运算符直接产生对象。必须创建一个类。 2、在类的声明中使用implements关键字来实现接口,一个类可以同时实现多个接口,各接口间用“,”隔开。 class classname implements interfacename1, interfacename2{ //重写接口中的方法; } 说明: 一个类实现了某个接口: (1)在类体中可以使用接口中定义的常量。 (2)必须实现接口中定义的所有方法。否则,该类是抽象类。 (3)一个类可以实现多个接口。之间用逗号隔开 一个类在实现某接口抽象方法时: (1)除关键字abstract外,方法的声明必须与接口中所定义的完全一致(包括访问控制修饰符、返回值类型、参数列表)。 (2)方法必须显示的使用public修饰符 实例1:接口的定义和实现 interface_ex\ package interface_ex. source; //接口的定义 public interface MyInterace { public static double G=88; public abstract void show(); } 测试接口 package interface_ex. test; import interface_ex.source.MyInterace; import interface_ex.source.A; public class InterfaceTest { public static void main(String[] args) { A obj=new A(类A:); obj.show(); System.out.println(obj1.G=+obj.G); //System.out.println(“接口的运行时多态”); MyInterace o

文档评论(0)

1亿VIP精品文档

相关文档