java在面向对象理论中,派生类应该继承父对象的接口吗?
我是一个自学成才的程序员爱好者,我所有的知识都来源于看到编译器喜欢什么和不喜欢什么
假设我有(用C#表示法,Java可能还有其他能力)
我需要重写的类如下所示:
public interface ICanDoSomethingElse
{
void DoIt();
}
class Parent : ICanDoSomethingElse
{
public void EatTacos()
{
}
void ICanDoSomethingElse.DoIt(string thingToDo)
{
// Implementation
}
}
所以我这样做:
class Child : Parent, ICanDoSomethingElse
{
new public void EatTacos()
{
}
void ICanDoSomethingElse.DoIt(string thingToDo) // NEW keyword illegal here?
{
// Implementation
}
}
问题
我注意到,新的关键字在界面中是非法的。这是因为这是一个显式接口吗
有没有办法强迫孩子们实现接口,或者这仅仅意味着我需要设置隐式/显式转换
# 1 楼答案
我认为
interface
实现与new
关键字无关在从其父方法继承的方法上定义新行为时,使用
new
关键字那孩子呢
如果想将接口用作实现,则不需要使用
new
关键字