我有一个类:的Java:抽象泛型类构造函数的参数
public abstract class Response<T> {
private boolean isSucessfull;
private T data;
public Response() {
throw new IllegalArgumentException();
}
public Response(boolean isSucessfull, T data) {
this.isSucessfull = isSucessfull;
this.data = data;
}
...
}
和其它类是与一些特定类型的扩展:
public class PlainResponse extends Response<byte[]>{
//
}
出现的问题,当我尝试创建一个实例PlainResponse的:new PlainResponse(success, responseData)
constructor PlainResponse in class PlainResponse cannot be applied to given types;
required: no arguments
found: boolean,byte[]
正如您可以猜到,我不是在Java方面的专家。但我预料到,我的课程将使用超级课程的构造函数。
我该如何实现它?
谢谢。
请注意,如果您首先在“响应”中没有无参数的构造函数,则不会遇到此问题。鉴于在没有引发异常的情况下实际调用是不可能的,因此最好不要将它首先定义。然后编译器可以要求'PlainResponse'有一个调用父'(boolean,T)'构造函数的构造函数。 – dimo414