有沒有通俗易懂的解釋,官方的都可以百度到,感覺還是吃不透
怎么理解匿名內部類
慕萊塢9220042
2016-06-26 02:58:00
TA貢獻5條經驗 獲得超1個贊
舉個例子吧,比如說要新建個線程,使用Thread(Runnable)這個構造方法,如果不用匿名內部類,就要這樣寫:
new Thread(new IRunnable()).start();
class IRunnable implements Runnable {
@Override
public void run() {
// 線程內執行的代碼
}
}
如果你用了匿名內部類,就是這樣寫:
new Thread(new Runnable(){
@Override
public void run() {
//線程內執行的代碼
}
}).start();
相比較,第一種定義一個類代碼比較多,而第二種代碼比較少。一些代碼基本不能復用,而且代碼量不大,可以嘗試用匿名內部類。
舉報