无法加载主类

时间:2014-09-12 14:59:09

标签: java

这是一个简单的类,我是Java的初学者。

enter image description here

我不知道为什么这段代码没有运行以及它为什么会出错: Could not find or load main class

class tuto{
      public static void main(String[] args){
             System.out.println("Hello World");
      }
}

4 个答案:

答案 0 :(得分:4)

当我查看你的问题时,有几件事情会突然袭来。

首先,您有未解决的编译器错误。如果你看到红色' x'在“问题”选项卡上,您应该在尝试运行任何内容之前修复所有错误。

第二件事是你的班级名称与定义它的文件名不匹配。对于公共类,类的名称和文件的名称必须匹配,虽然您的类不公开,但这是一个广泛遵循的Java约定,如果您不遵循它,您将会感到困惑。

至于你的实际问题,我最好的猜测是你已经将你的类放入一个包而不是在你的源代码中声明它。如果您查看“问题”选项卡,它会告诉您出现了什么问题以及(通常)如何解决问题。

如果我执行以下操作,我可以估算您的错误消息:

screen shot of runtime error

在这种情况下,我在Problems选项卡中有一个错误,抱怨声明的包。 检查你是否有类似的东西:

screen shot of compile error

如果这样做,您可以右键单击错误消息并选择"快速修复",eclipse将弹出一个对话框,为您添加包声明:

screenshot of Quick Fix dialog

答案 1 :(得分:3)

在您的代码中存在编译错误,这是因为Syteme将其更改为System

Syteme.out.println("Hello World");

应该是

 System.out.println("Hello World");

P.S 在Java中,如果文件中有公共类,则文件名必须是该类名。这是必须的。否则你会收到错误。

如果您在包中包含此类,则必须先指定包声明

e.g

package abc;

答案 2 :(得分:2)

System.out.println不是Syteme.out.println

在Java中(正如某人已经指出的那样)该文件的名称应该是同一文件中same name的{​​{1}}。

此外,您还应使用此语法main class而不是array_type [] array_id声明数组。

答案 3 :(得分:-1)

可能存在一些问题:

  1. 如果类在包中,请确保指定它。例如:package com.pak;

  2. 具有main方法的类始终需要公开。 public class apples{}