扩展Java类
我正在尝试使用扩展Java类,java,android,gpuimage,android-gpuimageview,Java,Android,Gpuimage,Android Gpuimageview,我正在尝试使用GPUImageandroid类。我已经为此构建了一个android应用程序,但我需要向GPUImage类添加一些附加功能 为此,我采取了以下措施: public class GPUImageExt extends GPUImage { } 我需要覆盖其中的一些,但我还必须添加一些新方法 例如,存在一个SavedListener,我需要添加一个额外的侦听器 不幸的是,我遇到了这样一个问题: co.jp.cyberagent.android.gpuimage.gpuimage中没有
GPUImage
android类。我已经为此构建了一个android应用程序,但我需要向GPUImage
类添加一些附加功能
为此,我采取了以下措施:
public class GPUImageExt extends GPUImage {
}
我需要覆盖其中的一些,但我还必须添加一些新方法
例如,存在一个SavedListener
,我需要添加一个额外的侦听器
不幸的是,我遇到了这样一个问题:
co.jp.cyberagent.android.gpuimage.gpuimage中没有可用的默认构造函数
如何修复此问题?您必须决定从子类的构造函数调用
GPUImage
的哪些现有构造函数
例如,由于GPUImage
具有一个构造函数,该构造函数采用Context
类型的单个参数,因此子类中可以有一个构造函数:
public GPUImageExt (Context context)
{
super (context);
...
}
或:
你可以看到来源
试试这个
public GPUImageExt( final Context context )
{
super( context );
}
构造函数必须调用
GPUImage
publicGPuimage(最终上下文)
您可能想考虑是否要对GPUIGIN进行子类化,而不是将其封装在某个组件中,并使用组合/委托。 默认构造函数是一个不带参数的构造函数,所以只需向类中添加一个,即使您不使用它
public class GPUImageExt extends GPUImage {
Context context;
public GPUImageExt (Context context)
{
super (context);
this.context = context;
...
}
//default constructor
GPUImageExt(){
super(context);
}
}
public class GPUImageExt extends GPUImage {
Context context;
public GPUImageExt (Context context)
{
super (context);
this.context = context;
...
}
//default constructor
GPUImageExt(){
super(context);
}
}