我需要在运行时获得对象的类。
对于非抽象类,我可以这样做:
public class MyNoneAbstract{
public static Class MYNONEABSTRACT_CLASS = new MyNoneAbstract().getClass();
但是对于抽象类来说,这不起作用(总是给我Object
)
public abstract class MyAbstract{
public static Class MYABSTRACT_CLASS = MyAbstract.class.getClass();
此代码将在JavaME环境中运行。
发布于 2018-07-05 15:56:27
你只需要
MyAbstract.class
该表达式返回表示MyAvact的Class对象。
发布于 2018-07-05 17:25:22
我想这里需要更多的信息。在Java中,不能实例化抽象类。这意味着运行时的对象不能使其类是抽象的。它需要是一个实现所有抽象方法的子类。在JavaME中,Object.getClass()
应该是你所需要的。你是否试图在运行时重新构建类层次结构?
在这种情况下,你可以实现如下内容:
public String getClassHierarchy() {
return super.getClassHierarchy() + ".MyAbstract";
}
https://stackoverflow.com/questions/-100000379
复制相似问题