当前位置:  开发笔记 > 编程语言 > 正文

是否应该在子类中显式实现从基类继承的接口?

如何解决《是否应该在子类中显式实现从基类继承的接口?》经验,为你挑选了2个好方法。

我的问题是,如果通过扩展已经实现它的类隐式实现的接口应该由类显式实现,如果类想要通告该事实,则它满足该接口的约定.

例如,如果要编写一个类,那就完成了接口的约定java.util.List.您实现了这个,扩展了java.util.AbstractList已经实现接口的类List.你明确声明,你实现了List吗?

public class MyList extends AbstractList implements List

或者你是否通过隐式方式保存输入?

public class MyList extends AbstractList

哪种方式被认为是更好的风格?你有什么理由喜欢这种或那种方式?在哪种情况下你更喜欢方式1或方式2?



1> krosenvold..:

避免冗余.使用方法2.

使用@Override进行覆盖.



2> Steve B...:

这不是一个"风格"的问题.如果要扩展已实现List的AbstractList,则不需要显式实现List.

这不仅仅是一个保存打字的问题.由于额外的"工具列表"是多余的,有人可能会花一些时间试图找出它存在的原因.你本质上是在写一个已经成为语言一部分的保证.


如果其他人将AbstractList更改为不再实现List会发生什么?然后MyList坏了?我不认为这是一个强有力的论据,只是扮演魔鬼的拥护者.
推荐阅读
Life一切安好
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有