匿名內部類這一語法適用於建立一次性使用的類。
語法格式為:
new 實現介面() | 父類構造器 (實參列表)
從這一定義可以看出,使用匿名內部類需要注意兩點:
而最常見的匿名內部類的應用場合為: 需要通過實現介面來建立匿名內部類。
舉個例子:
inte***ce productinformationlist
public
class anonymousclasstest
public
static
void
main(string args)
public string getname()
});
}}
注:
但是,如果是通過繼承抽象父類來建立匿名內部類,則有:
匿名內部類將擁有和父類擁有相同行參列表的構造器。
舉個例子:
abstract class person
public
person(string name)
//私有成員變數name的setter和getter方法
public
void
setname(string name)
public string getname()
}public
class anonyousinnertest
public
static
void
main(string args)
});//呼叫無參構造器建立person匿名實現類的物件
person p = new person()
//實現抽象方法
public
double
getheight()
//重寫父類例項方法
public string getname()
};ait.test(p);
}}
輸出結果:
姓名為圖靈;
身高為180.20;
......
...分割線...
......
匿名內部類的初始化塊。。。
姓名為人工智慧;
身高為170.40;
也就是說,建立匿名內部類時,必須實現介面或抽象父類中的所有抽象方法。
另外,如果有必要的話,也可以重寫父類中的普通方法。
java 中的匿名內部類
一 基本概況 匿名內部類 就是內部類的簡化寫法 前提 存在乙個介面或者是乙個類 這裡的類可以是抽象的也可以是具體的類 格式 new 類名或者介面名 匿名內部類的本質 是乙個匿名物件或者是實現了該介面的的子類的匿名物件,inte ce inter class outer public void sho...
JAVA匿名內部類
abstract class base public abstract void f public class anonymousconstructor public void f public static void main string args 在此例中,不要求變數i 一定是final 的。...
Java 匿名內部類
內部類定義在區域性時,1,不可以被成員修飾符修飾 2,可以直接訪問外部類中的成員,因為還持有外部類中的引用。但是不可以訪問它所在的區域性中的變數。只能訪問被final修飾的區域性變數。非靜態,沒物件,不執行 class outer new inner function class innerclas...