“线程中的异常”;“主要”;java.lang.NoSuchMethodError:main-如何修复它?
请帮我修复我的简单程序。我只是Java编程的新手。当我编写程序时,程序已成功编译但无法运行,导致线程“main”java.lang.NoSuchMethodError:main中出现“按摩错误”异常。每个人都能帮我运行这个程序吗 编码为: 个人类“线程中的异常”;“主要”;java.lang.NoSuchMethodError:main-如何修复它?,java,Java,请帮我修复我的简单程序。我只是Java编程的新手。当我编写程序时,程序已成功编译但无法运行,导致线程“main”java.lang.NoSuchMethodError:main中出现“按摩错误”异常。每个人都能帮我运行这个程序吗 编码为: 个人类 //Program to display student details using inheritance class Person { String name; int age; } 学生班 class Student exten
//Program to display student details using inheritance
class Person {
String name;
int age;
}
学生班
class Student extends Person
{
int mark1,mark2,mark3;
void putdata()
{
System.out.println("Name = " + name);
System.out.println("Age = " + age);
System.out.println("Mark1 = " + mark1);
System.out.println("Mark2 = " + mark2);
System.out.println("Mark3 = " + mark3);
}
}
马克斯班
class Marks
{
public static void main(String[] args)
{
Student obj1=new Student();
obj1.name="Sultanah";
obj1.age=17;
obj1.mark1=67;
obj1.mark2=87;
obj1.mark3=97;
obj1.putdata();
}
}
JVM在尝试启动程序时,会查找与运行程序所传递的名称同名的类。一旦找到该类,它就会在其中查找
main
方法。因此,请确保运行程序时使用标记
作为类名,因为这是包含main方法的类 或者:
main()
方法应该放在Student
类中,如果那是你正在执行的类,或者main()
方法的类,即标记
似乎您正在尝试运行没有main方法的类。根据您的代码,Marks.java有main方法,所以编译后可以使用
java Marks
你是怎么运作的?总之有一件事。类标记应该是公共的,文件名应该是Marks.javaI复制了您的代码,它运行得很好。你是怎么运作的?您是否在命令行中包含了.class或.java扩展名?@jaydeppatel在这两方面都是错误的。不,它没有“在文件中查找公共类”。它在命令中查找名为public或其他名称的类。文件名是什么?它在命令行中查找名为的类。句号。我没有问题按原样运行代码…Main类不需要是
public
…我将文件保存为Student.java,并尝试使用Student.java在cmd下编译和运行,但错误已显示为我的问题如上所述。那我的问题是什么?Thanks@RogManJiwaMerdeka看看我的答案。忽略这个不断变化的可移动盛宴。现在谁知道它说了什么?两方面都错了。你读过其他答案和评论了吗?令人惊讶的是,javac
不关心java文件的名称,它会创建标记。不管怎样,类
文件……而且,EJP是对的,类不需要公开,仍然是错的。问题中没有证据表明他有Marks.java文件。事实上,你最初的回答假设他没有。当你在别处读到他的评论时,你会发现他没有。