[英]Creating a class in runtime in Android
我需要創建一個在 Android 運行時擴展抽象類的類。 我真正需要的是生成這樣的東西:
Class A extends AbstractClass{
A(){
super("A name that is saved on AbstractClass");
fieldFromAbstractClass =...
}
@Override
public void aMethodFromAbstractClass(){
//some code....
}
}
我想在運行時生成這個。 這可能嗎?
您可以使A
成為匿名內部類。 但是,您不能提供新的構造函數。 對於您的示例,在AbstractClass
定義fieldFromAbstractClass
並提供一個 getter 和一個 setter。
AbstractClass a = new AbstractClass() {
@Override
public void aMethodFromAbstractClass() {
// ...
}
}
a.setFieldFromAbstractClass( someValue );
// do something with A
如果聲明為 final,您還可以從內部類中的包含塊中引用變量。 有關更多信息,我建議閱讀一些 Java 教程或書籍。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.