關於匿名內部類的兩句話

形於下面這種形式的定義叫匿名內部類:java

Object o = new Object() {    // 擴展自Object類
    public String toString() {
        // 覆蓋toString()方法
    }
};

又或者:code

Runnable thread = new Runnable() {    // 實現Runnable接口
    public void run() {
        // 實現run()方法
    }
};

假如不是匿名類,而是一個普通類,咱們是否是能夠這樣寫:
 class Universal extends FatherClass implements Interface1,Interface2 { }
普通類Universal 繼承於類FatherClass ,同時又實現了Interface1與Interface2接口。(實現了兩個接口)
而對於一個匿名類,就不能象上面的Universal既有繼承,又有實現。且若是是實現只能是實現一個接口。繼承

也就是在定義變量的同時來定義它的類,因爲一個變量只能定義成一種類型,固然匿名內部類只能擴展一個類或者實現一個接口了。
接口

相關文章
相關標籤/搜索