Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/401.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/230.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我的一个类的子类列表_Java_Android_Ios - Fatal编程技术网

Java 我的一个类的子类列表

Java 我的一个类的子类列表,java,android,ios,Java,Android,Ios,在Android环境下,我需要列出我的一个类的所有子类。 我看到有一些读取目录的示例。。。。但我希望通过询问线程、应用程序级别或其他运行对象来找到它们 在iOS下,我使用objc_getClassList,然后选择我感兴趣的 有人知道有没有办法在通用java或特定android库上找到像objc_getClassList这样的干净解决方案 提前谢谢。 PS:我想列出的所有这些类都在某个java包中您需要使用内省和类加载器来找出这些类,并测试它们是否是给定超类型的子类型。下面是您在J2SE上的问题

在Android环境下,我需要列出我的一个类的所有子类。 我看到有一些读取目录的示例。。。。但我希望通过询问线程、应用程序级别或其他运行对象来找到它们

在iOS下,我使用objc_getClassList,然后选择我感兴趣的

有人知道有没有办法在通用java或特定android库上找到像objc_getClassList这样的干净解决方案

提前谢谢。
PS:我想列出的所有这些类都在某个java包中

您需要使用内省和类加载器来找出这些类,并测试它们是否是给定超类型的子类型。下面是您在J2SE上的问题的一个有趣的实现:

我不确定我是否理解您的问题,但是您可以创建一个名为AllClass之类的类,并在其中放置一个ArrayList子类;然后在你所做的每一个子类中 AllClasses.subclass.addthis


谢谢你应该这么做

谢谢你的回答,因为它在安卓环境下不会打开。我会花时间看看原因。这正是我要找的。Frankly说我认为这种功能是集成到所有OOL中的!这是乌尔的松散兴趣。当出现新的子类时,我需要它为用户添加新的功能。每当程序员添加一个子类时,就会出现一个新的功能!如果这在Java中是不可能的,我们将这样做,就像一个函数指针的C数组!最后,我以您的方式做了一些事情:`public class PortHelper{static ArrayList portsubclassist;static{portsubclassist=new ArrayList;}static public void addPortSubclassClass c{portsubclassist.addc;}`对于我感兴趣的问题,我想我理解了为什么不可能要求VM列出所有当前的类。因为虚拟机不知道这个列表。与objective C不同,在JavaEnv中。每个类只有在被调用时才知道。只有在运行时引用类时,才会调用静态{instructions;}扇区。