Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/visual-studio-code/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
错误:无法在java中找到或加载主类_Java_Visual Studio Code - Fatal编程技术网

错误:无法在java中找到或加载主类

错误:无法在java中找到或加载主类,java,visual-studio-code,Java,Visual Studio Code,我正在用VSCODE编写我的第一个java程序我的java版本是10.0.2 当我运行代码时,它会显示一个错误,我设置了环境变量和路径 错误:无法找到或加载主类(我的类名),原因是: java.lang.ClassNotFoundException:(我的类名) 这是我的密码 class main { public static void main ( String [] args) { System.out.println("HELLO EVERYONE"); } } 是由于java

我正在用VSCODE编写我的第一个java程序我的java版本是10.0.2 当我运行代码时,它会显示一个错误,我设置了环境变量和路径

错误:无法找到或加载主类(我的类名),原因是: java.lang.ClassNotFoundException:(我的类名)

这是我的密码

class main {
public static void main ( String [] args)
{
    System.out.println("HELLO EVERYONE");
}
}

是由于java的最新版本还是其他原因造成的?

您是否确保
文件名
类名
相同

  • HelloWorld.java->文件名
  • HelloWorld->类名 一个简单的演示是:

    public class HelloWorld {
        public static void main(String[] args) {
            System.out.println("Hello world");
        }
    }
    
    在您的情况下,如果必须使用单词
    main
    作为
    类名
    。那还可以

    您有两个选项来实现这一目标:

  • 确保
    文件名
    类名
    相同
  • 或者只需删除关键字
    public
    ,如下所示:

    班长{ 公共静态void main(字符串[]args){ System.out.println(“你好世界”); } }

  • 我还要说一件事:

    请注意:

  • 类名应为大写
  • 变量、属性、包、方法的lowerCamelCase 使现代化 为什么会有规则? 有一个问题

    任何声明为公共的类都应保存在同名的文件中。如果公共类和包含它的文件的名称不同,则是编译错误。未声明为公共的类可以保存在不同名称的文件中

    请注意,生成的类文件是以java类命名的,而不是以文件名命名的

    为什么要遵守规则? 关于设计理论/目的,这里有一个非常全面的例子

    但就我个人而言,我更喜欢BlueRaja-Danny Pflughoeft的作品:

    这正是Java制造商Sun制定的惯例。 目的是组织;原因是,每个用Java编写代码的人都有一个统一的命名文件的方法


    无法再现错误。您的文件是否保存为main.java?
    class main{…}
    暗示“(我的类名)”为“main”,包含的文件为“main.java”。你到底尝试了什么?你没有告诉我你是如何编译和运行的。这就是问题所在。@Madham不,当我在我的电脑上尝试同样的方法时,即使类名和程序名不同,它也能工作……程序在我的电脑上以VSCODE运行,没有错误。类名I Java不能包含括号或空格。张贴您实际使用的代码。告诉我们实际的文件名是什么。你实际上是如何编译这个类的,以及你实际上是如何执行它的。我尝试将程序重命名为与它工作的类名相同的名称(我笔记本电脑上的java版本是10.0.2),但是当我在PC上编写代码时,我的类名与我的程序名不同,当我运行它工作的程序时(我PC上的java版本是1.8.0¡),为什么?