在内部类内执行 main 方法
2022-09-03 09:44:43
如何执行main方法,如果它存在于静态内部类中?
Main 方法存在于静态内部类中,我们需要执行该 main 方法。
class A {
static class B {
public static void main(String[] args) {
System.out.println("Done");
}
}
}
如何执行main方法,如果它存在于静态内部类中?
Main 方法存在于静态内部类中,我们需要执行该 main 方法。
class A {
static class B {
public static void main(String[] args) {
System.out.println("Done");
}
}
}
试试下面这样:
java A$B
根据评论进行更新:
在 linux shell 中,你应该转义 $。因此,该命令变为:
java 'A$B'
它就像简单的类。Run 命令 编译内部类时,会附加外部类名 在本例中为两个类文件。即. 和java A$BA.classA$B.class
java命令将类名作为参数,而不是文件名java A$BOuterClass$1OuterClass$1因此,如果您按如下方式修改示例,现在包括匿名和方法本地内部类
import java.io.Serializable;
public class A {
static class B {
public static void main(String[] args) {
System.out.println("Done");
Serializable obj = new Serializable() {
};
Serializable obj1 = new Serializable() {
};
class MethodLocalClass {
}
}
}
}
然后,您将获得的类文件是 、 、 、 (对于匿名类) 和 。A.classA$B.classA$B$1.classA$B$2.classA$B$1MethodLocalClass.class
希望这个例子能:)