使用javac指定已编译类的名称

使用javac指定已编译类的名称,java,javac,Java,Javac,我有一个名为fence.java的类,使用javac编译后.class文件名为fence.class,但我希望它名为p1。当使用gcc编译C文件时,我可以通过使用-o选项来实现这一点,但是对于javac,我还没有找到类似的东西 这是Java中使用的约定,您无法更改。文件的调用方式应与其所包含的类相同。在java中,类文件名由源文件的名称决定,并且由编译器自动完成,如果您想使用名称p1,则在编译之前将源文件的名称更改为该名称(执行此操作时,请记住更改类名和文件名。)答案中的第二句仅适用于公共类。问

我有一个名为
fence.java
的类,使用javac编译后.class文件名为
fence.class
,但我希望它名为
p1
。当使用gcc编译C文件时,我可以通过使用-o选项来实现这一点,但是对于javac,我还没有找到类似的东西

这是Java中使用的约定,您无法更改。文件的调用方式应与其所包含的类相同。

在java中,类文件名由源文件的名称决定,并且由编译器自动完成,如果您想使用名称
p1
,则在编译之前将源文件的名称更改为该名称(执行此操作时,请记住更改类名和文件名。)

答案中的第二句仅适用于公共类。问题中的第一句仅适用于公共类。