我想保存没有名称的 Java 文件,并且我想编译或运行该文件。这在Java中是否可行?
例子:
class A {
public void display() {
System.out.println("Hello ..How are you..??");
}
}
我想将此文件名保存为.java
only(扩展名前没有任何名称)。这在Java中是可能的吗?如果有可能,我们可以通过cmd编译这个没有名称的文件吗?
我想保存没有名称的 Java 文件,并且我想编译或运行该文件。这在Java中是否可行?
例子:
class A {
public void display() {
System.out.println("Hello ..How are you..??");
}
}
我想将此文件名保存为.java
only(扩展名前没有任何名称)。这在Java中是可能的吗?如果有可能,我们可以通过cmd编译这个没有名称的文件吗?
这似乎是可能的!令我惊讶的是,您的示例编译得很好。(我用过1.7)
javac .java
A.class
在同一目录中生成的命令。
但是,如果你声明你的'A'
类public
是不可能的。(在 Java 中,所有声明为 public 的类都必须以文件名作为公共类名存储)
如果你尝试它,你会得到
.java:1: error: class A is public, should be declared in a file named A.java
所以可能不会。
我相信你对文件命名规则有一点误解。如果您的班级是,public
那么您将收到错误class Cat is public, should be declared in a file named Cat.java
,因为 JLS 要求这样做。但是,.java
只要它不包含public class
. 如果它确实包含 a public class
,那么您将不得不给出class
no 名称,这在 Java 中是不可能的。
文件内容.java
class Cat {
private final static int four = 42;
private final int age;
public Cat(int age) {
this.age = four;
}
public void meow() {
System.out.println("Meow.");
}
}
命令
javac .java
输出
一个恰当命名的文件,其中Cat.class
包含模拟真实猫的所有必要组件。
也就是说,请不要为了你自己和任何看过你代码的人的利益而做这样的事情。
您可以在目录中使用 like 进行编译,而无需特定于文件名
javac *.java