Java Can';在类TapeDeck中找不到main(String[])方法。main方法位于运行程序的另一个类中
我有两节课。当我将类TapeDeckTestDrive放在文本编辑器的第一位时,它运行良好。当我将TestDrive类放在第一位时,它给出了一个错误,即找不到主类。为什么会这样Java Can';在类TapeDeck中找不到main(String[])方法。main方法位于运行程序的另一个类中,java,methods,main,Java,Methods,Main,我有两节课。当我将类TapeDeckTestDrive放在文本编辑器的第一位时,它运行良好。当我将TestDrive类放在第一位时,它给出了一个错误,即找不到主类。为什么会这样 class TapeDeck { boolean canRecord = false; void playTape(){ System.out.println("tape playing"); } void recordTape(){ System.out.
class TapeDeck {
boolean canRecord = false;
void playTape(){
System.out.println("tape playing");
}
void recordTape(){
System.out.println("tape recording");
}
}
class TapeDeckcTestDrive{
public static void main(String[] args){
TapeDeck t = new TapeDeck();
t.canRecord = true;
t.playTape();
if (t.canRecord == true) {
t.recordTape();
}
}
}
此格式错误
VS
以下工程罚款:
class TapeDeckcTestDrive{
public static void main(String[] args){
TapeDeck t = new TapeDeck();
t.canRecord = true;
t.playTape();
if (t.canRecord == true) {
t.recordTape();
}
}
}
class TapeDeck {
boolean canRecord = false;
void playTape(){
System.out.println("tape playing");
}
void recordTape(){
System.out.println("tape recording");
}
}
我将其拆分为两个文件,并向类/方法以及布尔值添加了public。现在代码运行。首先,必须使用
javac
编译文件。
然后,您必须运行该文件
写main的类名
javac filename.java
java classname
您可以通过两种方式运行java程序
java example_program.java
在这种类型中,编译和执行发生在运行时。就是
立即生成并执行字节码(用作解释器)
因此,必须首先使用超类(包含main方法),然后使用其他方法
复合类。
javac example_program.java
java example_program
在这里,编写类的顺序并不影响。您可以按任意顺序编写这些类。它可以正常工作。使用命令编译代码后:
javac fileName.java
运行java.class
文件时,只需指定文件名
,而不指定.java
扩展名
java fileName
如果使用
fileName.java
,它将不会运行特定的.class
文件;它将尝试解释.java
文件。如果要解释.java
文件,则父类必须包含main(String[])
方法。您的java类(文件)名称是什么?解决这个问题的最简单也是最好的方法是每个文件有一个类。@Abdul Hussain请告诉文件名它运行正常,它给出了错误:什么是“it”。如何执行应用程序?这不是执行类的最佳方式。首先,用javac编译代码。然后使用java并传递包含main方法的类的完全限定名。