我像这样动态地获取一个类:
Class<?> clazz = Class.forName("com.android.systemui.quicksettings.QuickSettingsTile");
Run Code Online (Sandbox Code Playgroud)
我想创建另一个名为DummyTilethats的类扩展我以前的类.它看起来像这样:
public class DummyTile extends QuickSettingsTile {
public DummyTile(Context context, QuickSettingsController qsc) {
super(context, qsc);
}
public void updateTile() {
System.out.println("Hello");
}
@Override
public void updateResources() {
updateTile();
super.updateResources();
}
}
Run Code Online (Sandbox Code Playgroud)
...但我不知道如何使用反射来做到这一点.这是我正在尝试扩展的类.我也不确定如何覆盖方法并使用构造函数初始化对象.我使用反射非常简单的事情,但从未处理动态扩展另一个类.
如果有人能用一些片段指出我正确的方向,我相信我能够从那里处理它.
您可以\xe2\x80\x99t 通过反射来做到这一点。您可以使用but that\xe2\x80\x99sinterface动态创建实现。java.lang.reflect.Proxy
如果你想要更多,你必须使用第三方库。但这些库通常在较低级别上工作,例如字节代码,并且需要一些经验。而且它们不能在受限环境中使用。
\n| 归档时间: |
|
| 查看次数: |
2575 次 |
| 最近记录: |