扩展Java类

时间:2015-07-12 07:01:54

标签: java android gpuimage android-gpuimageview

我试图使用GPUImage安卓类。我已经构建了一个Android应用程序,但我需要为GPUImage类添加一些额外的功能。

为此,我做了:

public class GPUImageExt extends GPUImage {
}

我需要覆盖其中一些但我还需要添加一些新方法。

例如,SavedListener存在,我需要添加一个额外的侦听器。

不幸的是,我遇到了一个问题:

There is no default constructor available in co.jp.cyberagent.android.gpuimage.GPUImage

我该如何解决这个问题?

4 个答案:

答案 0 :(得分:0)

您必须决定从您的子类的构造函数调用GPUImage的哪些现有构造函数。

例如,由于GPUImage有一个构造函数,它接受类型为Context的单个参数,因此您可以在子类中包含构造函数:

public GPUImageExt (Context context)
{
    super (context);
    ...
}

或:

public GPUImageExt (Context context, SomeOtherType someOtherParam)
{
    super (context);
    ...
}

答案 1 :(得分:0)

您可以看到来源here

试试这个

public GPUImageExt( final Context context )
{
    super( context );
}

答案 2 :(得分:0)

您的构造函数必须调用GPUImage

的声明构造函数

public GPUImage(final Context context)

您可能想要考虑是否要根据GPUImage进行子类化,而不是将其包装在某些内容中并使用合成/委托。

答案 3 :(得分:0)

默认构造函数是一个不带参数的构造函数,所以只要在你的类中添加一个,即使你不能使用它。

public class GPUImageExt extends GPUImage {
Context context;

public GPUImageExt (Context context)
{
super (context);
this.context = context;
...
}
//default constructor
GPUImageExt(){
super(context);
}

}