我正在开发一个在线Java课程。我们目前正在构建以下实例化代码:
public class NameDriver
{
public static void main (String[] args)
{
//Instantiation
Name myName = new Name("Scott", "Robert", "Mitchell");
Name myName1 = new Name("Scott", "Mitchell");
Name myName2 = new Name("Mitchell");
Name noName;
System.out.println("myName: " + myName.toString());
}
}
对于以下内容:
public class Name
{
private String first;
private String middle;
private String last;
//Constructor Methods
public Name(String f, String m, String l)
{
first = f;
middle = m;
last = l;
}
public Name(String f, String l)
{
first = f;
middle = "";
last = l;
}
public Name(String l)
{
first = "";
middle = "";
last = l;
}
public Name()
{
first = "";
middle = "";
last = "";
}
public String toString()
{
return first + " " + middle + " " + last;
}
}
执行时的结果是错误消息“错误:无法找到或加载主类”。
Java文件的名称复制了主类的名称,因此似乎不是问题。
我做了一些研究,反复出现的主题似乎是我需要使用-cp选项指定类路径。我尝试使用完整的路径名称以及'。'从代码所在的目录,但无济于事。还值得一提的是,代码似乎成功编译,并且在执行时发生错误。
我很可能搞砸了代码 - 因为我刚刚开始使用Java,我只是看不到它,所以另一组眼睛会很棒。
答案 0 :(得分:1)
1)它的Java不是Javascript
2)您没有以正确的方式编译和执行它。
即:
打开命令窗口。导航到java源文件所在的文件夹。然后运行Javac
命令编译它们。
例如: Javac *.java
3)接下来,要运行,
导航到根类文件夹(生成类文件的位置)。如果您使用source dir作为已编译类的根文件夹,那么它就没问题了。
运行Java NameDriver
以运行您的程序。
答案已更新:
1)我认为您只是在编译主类NameDriver
。你需要编译所有的类。
例如: javac *.java
。这将编译所有类。
2)您运行错误。
运行类文件时不能提及.java。 这是错误的>> java -cp . NameDriver.java
这是正确的>> java NameDriver