//1、定義一個接口TestFace public interface TestFace{//定一個接口 void make();//定義一個接口方法 } //2、定義一個類MyClass,里面包含一個接口型變量 public class MyClass{//定義一個類 TestFace tf;//定義一個接口型變量tf public MyClass(TestFace tf){//構造函數初始化接口型變量tf this.tf = tf; } public work(){ //函數調用 this.tf.make();//實際的接口型類實例。 } } //3、定義2個類,實現接口TestFace public class C1 implements TestFace{//定一個類C1實現接口TestFace public void make(){//實現接口的方法make System.out.println("c1");//打印c1 } } public class C2 implements TestFace{//定一個類C2實現接口TestFace public void make(){//實現接口的方法make System.out.println("c2");//打印c2 } } //4、使用接口變量 TestFace tf1 = new C1();//實現一個類實例C1 TestFace tf2 = new C2();//實現一個類實例C2 MyClass mc = MyClass(tf1);//定義一個MyClass的類實例,使用tf1 MyClass mc2 = MyClass(tf2);//定義一個MyClass的類實例,使用tf1 //同一個類的work,能夠實現不同的打印內容 mc.work(); mc2.work();