2012-04-07 96 views
0

我想知道是否有人可以幫助我。Java程序將編譯但不運行

我定義我的界面:

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

有2類實現接口(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]類[參數...] (執行類) 或Java [-options] -jar jar文件[參數...] (執行一個jar文件)......等等等等」

誰能幫助我有了這個?這可能很簡單。我是一名初學Java的學生。

+5

可能最重要的是你沒有向我們展示的東西。你怎麼試圖運行這個程序? – 2012-04-07 02:56:27

+0

當您嘗試運行程序時,您正在輸入什麼命令?你用什麼命令來編譯它? – 2012-04-07 02:56:32

+1

您可以編寫您嘗試運行應用程序時啓動的命令嗎? – dash1e 2012-04-07 02:57:04

回答

1

你的程序沒有錯誤,你的程序絕對沒問題。但是,我不知道您正在編寫哪個命令來執行。請再次嘗試將絕對路徑設置爲JDK和JRE。

命令,如: -

用於編譯-javac Example.java 的運行-java Example

它會成功運行。希望它能幫助你。