k29*_*k29 7 java overriding tostring
假设我有一个接口和许多实现该接口的类.我想强制覆盖toString()
每个类中的默认实现(也就是说,如果某些类不覆盖它,那么应该导致编译错误).
是否有可能实现这一目标?在界面体中声明public abstract String toString();
(带或不带@Override
注释)是合法的,但没有任何效果.
nul*_*ent 14
是的,有点.
protected abstract String internToString();
Run Code Online (Sandbox Code Playgroud)
然后
@Override
public String toString() {
return internToString();
}
Run Code Online (Sandbox Code Playgroud)
在你的基类.
编写一个注解和注解处理器并在编译时使用它。
您的注释将如下所示:
public @ interface MustOverrideToString { }
Run Code Online (Sandbox Code Playgroud)
并且您的注释处理器将查找任何符合以下条件的类
归档时间: |
|
查看次数: |
888 次 |
最近记录: |