繁体   English   中英

扩展一个抽象类,该抽象类扩展了另一个抽象类,并且需要重写父抽象类实现的接口

[英]Extend an abstract class that extends another abstract class and need to override the interface the parent abstract class implements

我有一个称为Post的实体类。 Post的父级基于名为AbstractPost的抽象类。 AbstractPost具有变量“ author”,其设置者的签名在称为PostInterface的接口中定义。

我处于一种情况下,我需要覆盖作者的二传手,但不想修改父母(当然)。

这些是父类:

class Post extends AbstractPost
abstract class AbstractPost implements PostInterface
interface PostInterface

我有以下课程:

class MyPost extends MyAbstractPost
abstract class MyAbstractPost extends AbstractPost implements MyPostInterface
interface MyPostInterface extends PostInterface

但是,我得到了错误:

致命错误:MyAbstractPost :: setAuthor()的声明必须与PostInterface :: setAuthor()的声明兼容

我读到孩子们继承了父类的“实现”部分(这里是正确的术语?),所以我想我想知道如何重写它。 还是我没有以正确的方式扩展/实施?

谢谢!

答案是不。

重载方法签名会破坏具有接口的目的。

暂无
暂无

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

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