当前位置: 首页 > 面试题库 >

Java反射:通过输入名称来获取给定类的实例?

商同化
2023-03-14
问题内容

是否可以通过输入类名称作为字符串来获取类的所有实例

像这样吗

var instances = Reflection.findClass("com.someone.MyClass").getInstances();

任何反馈表示赞赏。谢谢。


问题答案:

不,没有类似的东西可用。如果您连接到调试API,则可以执行此操作,但在“正常”运行时则不能。



 类似资料:
  • 我有一个类(在我的项目中是一个单例),带有一些变量。我想通过在函数中传递变量的名称来获得其中的一个变量。现在我有:

  • 问题内容: 有没有一种方法可以获取给定类可访问(不一定是公共)的方法列表?有问题的代码将在完全不同的类中。 例: 我想上课: 所有自己的方法 和上课 当且仅当class 与相同的程序包中 永远不要包含在结果中,因为它是无法访问的。再次说明一下,需要查找并返回上述方法的代码将位于完全不同的类/包中。 现在,仅返回公共方法,因此不会做我想要的;只返回当前类的方法。虽然我当然可以使用后者,并手动检查可见

  • 使用Java反射,是否可以获取局部变量的名称?例如,如果我有: 有没有可能实现一种方法,可以找到这些变量的名称,比如: 编辑:这个问题与Java中有没有找到传递给函数的变量名称的方法不同?在这一点上,它更纯粹地询问一个人是否可以使用反射来确定局部变量的名称,而另一个问题(包括公认的答案)更侧重于测试变量的值。

  • 主要内容:理解反射的类型(Type)与种类(Kind)在 Go语言中通过调用 reflect.TypeOf 函数,我们可以从一个任何非接口类型的值创建一个 reflect.Type 值。reflect.Type 值表示着此非接口值的类型。通过此值,我们可以得到很多此非接口类型的信息。当然,我们也可以将一个接口值传递给一个 reflect.TypeOf 函数调用,但是此调用将返回一个表示着此接口值的动态类型的 reflect.Type 值。 实际上,r

  • 问题内容: 我正在尝试使用Java做反射 我想在通过不指定包名作为字符串将包含多个子包中的类说,.... 可能吗? 如果在这种情况下我有很多子包,那么进行大小写切换以预先挂在不同的子包上是不可行的。 问题答案: 首先,使用Reflections库获取所有类 接下来,建立一个查找映射。 当您需要查找课程时,您可以执行以下操作:

  • 问题内容: 我正在尝试使用Go的反射系统来检索函数的名称,但是在调用其类型的Name方法时会得到一个空字符串。这是预期的行为吗? 这是我如何解决问题的简单示例: 问题答案: 解决方案是使用FuncForPc返回一个。 返回: 如果需要,只需将其标记化即可。