繁体   English   中英

扩展Java类

[英]extends Java class

我正在尝试使用GPUImage android类。 我已经围绕此构建了一个android应用,但是我需要向GPUImage类添加一些其他功能。

为此,我已经完成了:

public class GPUImageExt extends GPUImage {
}

我需要重写其中的一些,但是我还必须添加一些新方法。

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

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

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

我该如何解决 ?

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

例如,由于GPUImage具有一个采用Context类型的单个参数的构造函数,因此您可以在子类中具有一个构造函数:

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

要么 :

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

你可以在这里看到源

尝试这个

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

您的构造函数必须调用已声明的GPUImage构造GPUImage

public GPUImage(final Context context)

您可能要考虑是否要完全继承GPUImage,而不是将其包装在某种东西中并使用合成/委托。

默认构造函数是不带任何参数的构造函数,因此即使您不使用它,也只需将其添加到类中即可。

public class GPUImageExt extends GPUImage {
Context context;

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

}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM