因此,当您将 Java (.java) 编译为类文件 (.class) 时,文件的名称以及文件的扩展名都可以更改。如果我有一段 C# 代码将 java 代码编译成类文件,那么我如何在 C# 中获取这些输出类文件的名称?
最佳答案
编译 .java 文件时,您将为该文件中声明的每个类获得一个 .class 文件。这意味着主类(必须与文件名匹配)以及任何内部类和匿名类。
class Outer {
static class Inner {
}
public void run() {
Thread t = new Thread(new Runnable() {
public void run() {
// code here
}
});
}
}
将产生:
Outer.class
Outer$Inner.class
Outer$1.class
因此,假设您正在构建一个干净的目录,您可以获取带有 .class 扩展名的文件列表,并通过知道将有一个类来获取 Foo.java
中的所有类的列表是 Foo.class
以及其他以 Foo$
开头的。现在这可能会被破坏,因为从技术上讲,您可以拥有自己的包含 $
的类,但强烈建议您不要这样做,因为它通常表示系统生成的类文件。
关于c# - 在C#中编译Java文件后如何获取输出的CLASS文件名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7476020/