我需要创建一个类,以扩展Android中运行时的抽象类.
我真正需要的是生成如下内容:
Class A extends AbstractClass{ A(){ super("A name that is saved on AbstractClass"); fIEldFromAbstractClass =... } @OverrIDe public voID aMethodFromAbstractClass(){ //some code.... }}
我想在运行时生成它.这可能吗?
解决方法:
在“传统” Java中,您可以在运行时创建和编译类,或者使用字节码生成器(例如ASM)来扩充或生成类文件.
但是,您需要记住,AndroID不是Java虚拟机.创建APK时,类文件将转换为专用的字节码,由AndroID的Dalvik虚拟机处理.
我不知道Dalvik特定于运行时的字节码生成器,所以我不认为(当前)可以执行您描述的 *** 作.
编辑
有一个名为Dexmaker的库,可以完成此 *** 作.我是从this related answer发现的.
总结以上是内存溢出为你收集整理的java-在Android的运行时中创建类全部内容,希望文章能够帮你解决java-在Android的运行时中创建类所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)