Java程序将编译但不会运行

时间:2012-04-07 02:54:21

标签: java

我想知道是否有人可以帮助我。

我已将界面定义为:

interface Model 
{
public String  toString();
public Model add (Model m);
}

实现接口有两个类(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;
 }
 }

我的主要定义了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学生。

1 个答案:

答案 0 :(得分:1)

你的程序没有错误。你的程序绝对没问题。但是,我不知道你要编写哪个命令来执行。再次尝试将绝对路径设置为JDK和JRE。

命令如: -

for Compile -javac Example.java for run -java Example

它会成功运行。希望它会对你有所帮助。