Java - 使用反射获取对静态类的引用

标签 java reflection class static

在 Java 中,是否可以使用反射访问静态类(嵌套)的实例?

假设我在包 Package1.SubPackage.SubSubPackage 中定义了以下 2 个类:

public class MyMainClass {  
   public static class SalesObjectGrouper1 {  
      public static final GrouperContext CONTEXT = new GrouperContext("MyDate");  
   }  

   private static class SalesObjectGrouper2 {  
      public static final GrouperContext CONTEXT = new GrouperContext("MyDate");  
   }  
}  

如果我运行下面的代码:

try {
     xyz = Class.forName( "Package1.SubPackage.SubSubPackage.MyMainClass.SalesObjectGrouper1" );
} catch( ClassNotFoundException ex ) {
     // always hit the error
}

它会报错提示找不到类。这能做到吗?

最佳答案

您是否尝试过将嵌套类称为

MyMainClass$SalesObjectGrouper1

嵌套类在内部命名为 ContainingClassName$NestedClassName

关于Java - 使用反射获取对静态类的引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3357478/

相关文章:

c# - 在反射(reflect)的导航属性上添加排序

Java:通过反射多次访问同步方法?

Java反射调用多个参数的方法

php类变量

ruby - 如何反转 ruby​​ 的包含函数

java - Java 环境中的 Silverlight 模拟

java - 处理tcp java socket项目中的异常

Java CDI。拦截器仅在类中的第一个方法调用中被调用

java - 使用内部类的 JDBI

c++ - 如果通过new创建对象,成员函数的局部变量在哪里创建?