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

如何在Java中加载嵌套类?

闻人修平
2023-03-14
问题内容

我有以下的Java代码:

public class CheckInnerStatic {

private static class Test {
    static {
        System.out.println("Static block initialized");
    }
    public Test () {
        System.out.println("Constructor called");
    }
}

    public static void main (String[] args) throws ClassNotFoundException, InstantiationException, IllegalAccessException {
        System.out.println("Inside main");
        Class.forName("Test");    // Doesn't work, gives ClassNotFoundException
        //Test test = new Test();   // Works fine
    }
}

class.forName("Test")下一行工作正常时,为什么这里的工作不正常?


问题答案:

使用Outer$Nested(无论嵌套类是否为静态)

public class CheckInnerStatic {

    private static class Test {
    static {
        System.out.println("Static block initialized");
    }
    public Test () {
        System.out.println("Constructor called");
    }
}

    public static void main (String[] args) throws ClassNotFoundException, InstantiationException, IllegalAccessException {
        System.out.println("Inside main");
        Class<?> cls = Class.forName("CheckInnerStatic$Test");
        //Test test = new Test();
    }
}


 类似资料:
  • 问题内容: 我有一个Java的HashMap,其内容(大家可能都知道)可以由 如果在另一个HashMap中有一个HashMap,即嵌套的HashMap,我将如何访问内容?我可以这样做吗,内联: 谢谢。 问题答案: 您可以像假设的那样进行操作。但是您的HashMap必须模板化: 否则,从第一张地图检索第二张地图后,您必须进行强制转换。

  • 问题内容: 没有使用foreach循环就可以针对以下问题定义LINQ语句吗? 在写这个问题时,我找到了解决问题的办法。我仍然会发布(并回答)这个问题,因为这个问题对我来说真是个麻烦。而且我在这里没有找到合适的现有问题。 乔,尤文 问题答案: 相信and可以解决这个问题! 第二个变量名称具有误导作用。除其他字母外,它还会返回的一个实例,该实例在原始集合中 不是 唯一的;)

  • 我试图在大查询中加载嵌套的json数据。 这是我正在使用的数据和模式... scehma - [{“名称”:“种类”、“类型”:“字符串”}、{“名称”:“全名”、“类型”:“字符串”}、{“名称”:“年龄”、“类型”:“整数”}、{“名称”:“居住的城市”、“类型”:“记录”、“字段”:[{“名称”:“地点”、“类型”:“字符串”}、{“名称”:“年数”、“类型”:“整数”}]}] 资料-- {

  • 问题内容: 我有嵌套的JSON对象,例如 而且我需要获取_events数组并对其进行解析。但是我不知道_events之前的单元格中的内容以及它们的状态。如何使用这种结构? 问题答案: 就像这样使用它: 这是一个有效的jsFiddle:http : //jsfiddle.net/ErHng/( 注意 :它会输出到控制台,因此您需要/ 在chrome中或在Firefox中打开firebug,然后重新运

  • 问题内容: 我正在努力获取在td中获取一些href所需的语法。table,tr和td元素没有任何类或id。 如果要在此示例中抓住优势,我需要什么? ... 谢谢 问题答案: 根据文档,首先创建一个分析树: 然后在其中进行搜索,例如搜索其直接父级是的标签:

  • 我有一个模型如下的项目(伪代码): 现在,如果我尝试获取类似的内容(get(0)只是一个示例): 我get LazyInitializationException未能延迟初始化角色的集合:ClientVersion。客户端,没有会话或会话已关闭 若我更改ClientVersion和客户端之间的关系上的FetchType以使其工作正常,但我当然更希望延迟加载它。 我知道如果我有权访问hibernat