用法:多線程
有的類,裏面只有一個方法,幾行代碼,只使用一次,之後再不會用到這個類,那就不值當的單首創建一個類,此時使用匿名內部類spa
1、傳統方式線程
一、接口blog
二、接口實現類接口
建立一個類,這個類可能被屢次使用,被new屢次,這個類至關於一個模板模板
三、建立接口實現類實例,調用其sum()方法class
2、匿名內部類方式方法
一、接口im
二、不須要再建立那個接口的實現類,直接把實現類的主體代碼拿過來(類的花括號裏面的所有)d3
在使用匿名內部類時,要記住如下幾個原則:
·匿名內部類不能有構造方法。
·匿名內部類不能定義任何靜態成員、方法和類。
·匿名內部類不能是public,protected,private,static。
·只能建立匿名內部類的一個實例。
·一個匿名內部類必定是在new的後面,用其隱含實現一個接口或實現一個類。
·因匿名內部類爲局部內部類,因此局部內部類的全部限制都對其生效。
舉例:用匿名內部類建立多線程
實現 Runnable接口方式:
new Thread(new Runnable() {
public void run() {
//do something
};
}) { }.start();
3、Lambda表達式