java-在Android的运行时中创建类

java-在Android的运行时中创建类,第1张

概述我需要创建一个类,以扩展Android中运行时的抽象类.我真正需要的是生成如下内容:ClassAextendsAbstractClass{A(){super("AnamethatissavedonAbstractClass");fieldFromAbstractClass=...}@OverridepublicvoidaMethodFromA

我需要创建一个类,以扩展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的运行时中创建类所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1085216.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存