2014-02-12 149 views
0

是否有人可以解釋爲什麼這是不工作? 你不能運行屬於同一類的方法嗎? 我在這個已經持續了一段時間,我的大腦剛剛開始受到傷害。 預先感謝您。調用同一個類中的方法

我的錯誤得到的是「線程中的異常主'java.lang.NoClassDefFoundError:dProb(錯誤的名稱:DProb)」雖然它不是編譯錯誤。當我嘗試傳遞變量時。

public class DProb{ 
    public static double Combinations(long N, long X){ 
     double comb = 0.0; 
     long n = N; 
     long r = X; 
     long denom; 
     if(n==r || r == 0) 
      n = 1; 
     else{ 
      denom = n-r; 
      for(long i = n; i > denom; i--){ 
       if (i == n){} 
       else 
        n *= i; 
      } 
      for (long i = r; i > 0; i--){ 
       if (i == r){} 
       else 
        r *= i; 
      } 
      n = n/r; 
     } 
     comb = n; 
     return comb; 
    } 

    public static double HyperGeometric(long Np, long Xp, long N, long X){ 
     double probX = 0.0; 
     double leftNum = Combinations(N,X); 

     return probX; 
    } 
} 
+1

調用在同一個類中的方法將正常工作。你看到什麼錯誤? – helion3

+0

你的意思是「不工作」而不是「現在工作」? (這是一個很常見的錯字。) – ajb

+0

你的問題是什麼? – Rob

回答

1

雖然從你打電話的主要功能確保類名稱是正確的。

根據你的錯誤似乎你的類名是有問題的。

你的類名是DProb和你打字dProb。

而且你爲什麼在超幾何返回0.0爲你Probx變量是0.0 ..

+0

OMG,我覺得愚蠢的,是的,我正在運行我的命令錯了....這裏沒有問題的,不介意我!該方法尚未完成。這就是爲什麼它返回0.0 – Doctor06

0
public class DProb{ 

需求是

public class dProb{ 

最可能的原因就是你的java文件被稱爲dProb.java。類名和文件名必須匹配!

+0

括號沒有問題。 – Vulcan

+0

其很難說我猜,開始括號真的揉成 – Drifter64

相關問題