匿名内部类和传接口
匿名內(nèi)部類也就是沒有名字的內(nèi)部類
正因?yàn)闆]有名字,所以匿名內(nèi)部類只能使用一次,它通常用來簡化代碼編寫
輸出:
正因?yàn)闆]有名字,所以匿名內(nèi)部類只能使用一次,它通常用來簡化代碼編寫
但使用匿名內(nèi)部類還有個(gè)前提條件:必須繼承一個(gè)父類或?qū)崿F(xiàn)一個(gè)接口
參考:http://www.cnblogs.com/nerxious/archive/2013/01/25/2876489.html
public interface MyInterface {public int add();
}
public class MyWork {public void set(MyInterface mi) { System.out.println("mi.add()>>> "+mi.add());}
}
public class NewT {public static void main(String[] args) {Person p = new Person() {public void eat() {System.out.println("eat something");}};p.eat();MyWork mw = new MyWork();mw.set(new MyInterface() {@Overridepublic int add() {return 1 + 2;}});}
}abstract class Person {public abstract void eat();
}
輸出:
eat something
mi.add()>>> 3
===============================
java中的內(nèi)部類總結(jié):
因?yàn)閮?nèi)部類可以隨意使用外部類的成員變量(包括私有)而不用生成外部類的對(duì)象,這也是內(nèi)部類的唯一優(yōu)點(diǎn)
程序編譯過后會(huì)產(chǎn)生兩個(gè).class文件,分別是Out.class和Out$In.class
更多參考:
http://www.cnblogs.com/nerxious/archive/2013/01/24/2875649.html
總結(jié)
- 上一篇: 编程经验
- 下一篇: Java常用命令及Java Dump