[Java] What is an interface in Java
2 min readJun 28, 2017
- 由於 Java 沒有 Class 多重繼承,為了讓物件具有多種型態,可以用 Interface (介面)的達到多重繼承的需求。
- 介面方法宣告預設都是”public”,有沒有加public 預設仍是 public。
- 介面宣告預設都是 abstract,有沒有加abstract 預設仍是 abstract。
- 當定義類別時,可以使用”implements”關鍵字來指定要實作哪個介面,介面中所有定義的方法都要實作。
- 由於介面中的方法預設都是 public,所以實作介面的類別中,方法必須宣告為 public,否則無法通過編譯。
public interface IRequest { public abstract void execute(); // 可以用 void execute(); 省略public或abstract,其意義相同。 }public class HelloRequest implements IRequest { private String name; public HelloRequest(String name) { this.name = name; } public void execute() { System.out.printf("Hello! %s!%n", name); } }實作多個介面的方式: public class 類別名稱 implements 介面1, 介面2, 介面3 { // 介面實作 }介面進行繼承的方式: public interface 名稱 extends 介面1, 介面2 { // ... }
References:
Originally published at vincewiki.blogspot.com on June 28, 2017.