在同一个类中调用一个方法

时间:2014-02-12 00:18:33

标签: java

有人可以解释为什么这不起作用? 你能不运行属于同一个类的方法? 我已经在这一段时间了,我的大脑刚开始受伤。 提前谢谢。

我得到的错误是“线程中的异常'主'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;
    }
}

2 个答案:

答案 0 :(得分:1)

从您的主函数调用时,请确保类名称正确。

根据您的错误,您的班级名称似乎有问题。

您的班级名称是 DProb ,而您输入的是dProb。

另外,为什么你在HyperGeometric中返回0.0,因为Probx变量是0.0 ..

答案 1 :(得分:0)

public class DProb{

需要

public class dProb{

最可能的原因是你的.java文件名为dProb.java。类名和文件名必须匹配!