加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

Java Generic:Generic可以扩展另一个Generic类吗?

发布时间:2020-12-15 04:37:16 所属栏目:Java 来源:网络整理
导读:在这里,这是我的问题,我有三个摘要类,都是通用的,我想要这样的东西: public abstract class AbstracOne T extends AbstractTwo K extends AbstractThreeK 这不起作用,我得到以下错误(在第二个扩展): 令牌“extends”的语法错误,预期. 但是,如果我使用以下
在这里,这是我的问题,我有三个摘要类,都是通用的,我想要这样的东西:

public abstract class AbstracOne< T extends AbstractTwo< K extends AbstractThree<K> >>>

这不起作用,我得到以下错误(在第二个扩展):

令牌“extends”的语法错误,预期.

但是,如果我使用以下代码,它正在工作:

public abstract class AbstracOne< T extends AbstractTwo< ? extends AbstractThree<?> >>>

那么,使用K和有什么区别?

非常感谢你

解决方法

输入参数vs Type参数

你可以阅读这个优秀的FAQ by Angelica Langer来清除这种区别.

泛型类具有类型参数,当您使用泛型类时,这些参数将替换为类型参数.

类型参数可以有约束.类型参数可以是完全限定类型或以前定义的类型参数.

因此,如果已经定义了K,则可以使用K.您还可以在定义约束时添加约束.

public abstract class AbstractOne<K extends AbstractThree<K>,T extends AbstractTwo<K>>

祝好运.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读