我想知道是否有人可以帮助我解决这个问题。
我将我的界面定义为:
interface Model
{
public String toString();
public Model add (Model m);
}
有 2 个类实现该接口(interface)(ClassA 和 ClassB):
class ClassA implements Model
{
private int val;
public ClassA(int x)
{
val = x;
}
public String toString()
{
return ""+ "value of object of class A is " + val;
}
public Model add (Model m)
{
if (m instanceof ClassA)
return new ClassA(val + ( (ClassA) m).val);
else
return null;
}
}
class ClassB implements Model
{
private String str;
public ClassB(String s)
{
str = s;
}
public String toString()
{
return str;
}
public Model add (Model m)
{
if (m instanceof ClassB)
return new ClassB(str + ((ClassB) m).str);
else
return null;
}
}
我的 main 定义了 ClassA 和 ClassB 的对象并调用它们的 tostring() 方法。
public class Example {
public static void main (String args[]) {
ClassA a = new ClassA(5);
ClassB b= new ClassB("Hi");
Model m = b;
System.out.println(m.toString());
ClassA a1 = new ClassA(7);
m = a.add(a1);
System.out.println(m);
}
}
当我尝试构建此文件时,它可以正常编译,但是在尝试运行该应用程序时,我收到一条错误消息:
“用法:java [-options] class [args...] (执行一个类) 或 java [-options] -jar jarfile [args...] (执行 jar 文件).....等...等”
有人可以帮我解决这个问题吗?这可能是很简单的事情。我是一名 Java 初学者。
最佳答案
你的程序没有错误。你的程序绝对没问题。但是,我不知道您正在编写哪个命令来执行。请再次尝试将绝对路径设置为 JDK 和 JRE。
命令如下:-
用于编译-javac Example.java
对于运行 -java 示例
它将成功运行。希望对您有帮助。
关于Java程序可以编译但不能运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10051355/