基於介面實現匿名內部類的注意事項
阿新 • • 發佈:2018-12-26
首先,先看基於介面實現匿名內部類的格式:
new <介面名> ()
{
};
注意:1、new操作符後面跟的是介面名,表明上是建立介面物件,實際上是建立了實現此介面的匿名內部類物件。
2、因為匿名內部類沒有名稱,無法被繼承,也不能使抽象類,因此在類中必須實現介面中的所有方法。
我們看一下例項程式碼:
我們看一下例項程式碼:
package s10;
interfaceMyInterface{
publicvoid show();
}
publicclassAnonymity{
publicstaticvoid main(String[] args){
//定義匿名內部類並建立其物件
MyInterface mi =newMyInterface(){
publicvoid show(){
// TODO Auto-generated method stub
System.out.println("實現了MyInterface介面");
}
};
mi.show();
}
}
執行結果如下:
總結:匿名內部類要麼實現一個介面,要麼通過多型進行,要麼通過繼承一個類,不能同時既進行繼承又實現介面。