天天看點

【Java】什麼是接口回調、對比上轉型對象、代碼案例

接口回調介紹

接口回調和上轉型是設計模式的解耦核心,可以說幾乎所有的模式都是建立在這兩者的應用之上的。

代碼案例

interface Shape {
  public static final double pi = 3.14;//public static final可省略
  public abstract double area();//public abstract可省略
}

interface another{
  //隻用來做多繼承思想的說明
}

class Circle implements Shape,another{//為多繼承思想的展現
  double radius;//新增變量
  public Circle(double r) {//新增方法
    radius = r;
  }
  public double area() {//實作接口的方法
    return (pi*radius*radius);
    //調用接口中的pi常量(可了解為繼承過來的)
  }
}
public class Exampleke9 {
  public static void main(String[] args) {
    Circle cir = new Circle(2.0);
    System.out.println("Area of cir = "+cir.area());
    Shape shape;//聲明接口變量
    shape = new Circle(2.0);//接口變量中存放對象的引用
    System.out.println("Area of cir = "+shape.area());
  //shape.area()為接口回調,若多個類implements一個接口,接口回調可以展現多态性
  }
}