我有一个A类。我有一个A类的参考 ref ,指向 x 类型的对象。 什么样的对象使 ref.getClass()打印 A $ 1 ? $表示什么?
答案 0 :(得分:13)
$表示内部类。在这种情况下:
public class A {
public A() {
Runnable r1 = new Runnable() {
public void run() { ... }
};
}
private static class Inner {
...
}
}
构造函数中的Runnable将生成一个类文件A $ 1.class,而Inner类将创建一个名为A $ Inner.class的文件。
匿名内部类在遇到它们时从1顺序编号(虽然我不确定这种行为是否得到保证)。命名的内部类在$。
之后附加其名称