我想在以下swig代码片段中添加一个明确的@Override
:
%extend gdcm::Tag {
int hashCode() {
return self->MyCxxHashCode();
}
};
现在,生成的Java代码不包含关键字:
package gdcm;
public class Tag {
[...]
public int hashCode() {
return gdcmJNI.Tag_hashCode(swigCPtr, this);
}
}
而我希望:
package gdcm;
public class Tag {
[...]
@Override
public int hashCode() {
return gdcmJNI.Tag_hashCode(swigCPtr, this);
}
}
最佳答案
最简单的方法是使用%javamethodmodifiers
,它通常只是“公开”的,但是可以很简单地选择实现以下目标:
%module test
%inline %{
struct Foo {};
%}
%javamethodmodifiers Foo::hashCode %{@Override
public%};
%extend Foo {
int hashCode() {
return 0;
}
};
关于java - 如何在Swig生成的代码中添加显式@Override?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46522039/