用abstract编译错误,不覆盖抽象方法

时间:2015-03-09 03:00:23

标签: java compiler-errors syntax-error

当我编译这个时,我得到错误IntSetGenerator不是抽象的,并且不会覆盖InstanceGenerator中的抽象方法generate_data(int,int) IntSetGenerator类实现InstanceGenerator。这是什么意思?我还可以用我的代码来修复它,以便不显示错误。

这是IntSetGenerator的代码

 import java.util.*;

class IntSetGenerator implements InstanceGenerator
{
    public Object makeInstance(long seed, long p1, long p2)
    {
        return makeIntSet(seed, p1, p2);
    }

    public long[] makeIntSet(long seed, long size, long max)
    {
        int count = 0;
        int arraysize = Long.valueOf(size).intValue();
        int maxvalue = Long.valueOf(max).intValue();
        long [] iset = new long[arraysize];
        Random randgen = new Random(seed);

        while (count < size)
        {
            iset[count] = (long) randgen.nextInt(maxvalue)+1;
            count++;
        }
        return iset;
    }

    public long[] makeIntSet(long size, long max)
    {
        int count = 0;
        int arraysize = Long.valueOf(size).intValue();
        int maxvalue = Long.valueOf(max).intValue();
        long [] iset = new long[arraysize];
        Random randgen = new Random();

        while (count < size)
        {
            iset[count] = (long) randgen.nextInt(maxvalue)+1;
            count++;
        }
        return iset;
    }   
}

以下是InstanceGenerator的代码

public interface InstanceGenerator { 

    public int[] generate_data(int size,int maximum);


}

1 个答案:

答案 0 :(得分:0)

您必须在IntSetGenerator类中实现generate_data(int value,int maxValue)。

示例:

public int[] generate_data(int size,int maximum){
    //do something here
}

或者将IntSetGenerator类标记为“abstract”。就像Marc Baumbach说的那样。

实施例: abstract class IntSetGenerator implements InstanceGenerator{}