-1

我已经编译了一个 java 文件,假设 test.java 使用 javac test.java

编译后生成两个类文件test.class和test$.class。

任何人都可以帮助我了解 $ 类文件。代码运行良好。我需要了解 $ 类文件。

它是一个临时文件吗?

下面是我的代码包test.myfolder;

公开课测试{

public String Login;
public String Name;
public String Num;
public String AccNum;

public test()
{
    this.Login = Abc.getMissChar();
    this.Name = Abc.getMissChar();
    this.Num = Abc.getMissChar();
    this.AccNum = Abc.getMissChar();
}

public test(String pLogin, String pName, String pNum, String pAccNum)
{
    this.Login = pLogin;
    this.Name = pName;
    this.Num = pNum;
    this.AccNum = pNum;
}

public String getLogin() {
    return Login;
}

public String getName() {
    return Name;
}

public String getNum() {
    return Num;
}

public String getAccNum() {
    return AccNum;
}
4

2 回答 2

1

如果一个源文件有多个类,每个类都会编译成一个单独的类文件,我认为你的类中还有另一个内部或匿名类。

于 2013-04-01T06:02:06.537 回答
1

如果您有匿名类(或者可能只是一个 switch 语句),Java 会在其中创建这些额外的类文件$

这些不是临时文件。Java 将需要它们来加载您的类。

于 2013-04-01T05:46:26.763 回答