我有一个接口BaseModel
错误继承
public interface BaseModel
{
String toString();
}
和抽象类BaseData
public abstract class BaseData
{
public abstract String toString();
}
我希望我的模型类重写toString()
方法。为此,我尝试了以下方法,一次一个,却不能在一起:
让我所有的模型类实现
interface BaseModel
让我所有的模型类实现
abstract class BaseData
在第一种情况下,如果我不覆盖模型类中的toString()
方法,则不会收到编译错误。我想这是考虑Object.toString()
方法作为有效的实现。
但在我的第二种情况下,如果我不重写toString()
方法,我得到一个编译错误:
The type
Title
must implement the inherited abstract methodBaseData.toString()
其中Title
是延伸BaseData
但不会覆盖toString()
我的模型类之一。
为什么有差异?
在此先感谢。
这是一个很棒的答案!非常感谢!而且,真棒格式! –