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

java – 警告:类型参数E在使用内部类时隐藏了类型E.

发布时间:2020-12-15 01:07:38 所属栏目:Java 来源:网络整理
导读:我正在编写一个堆栈,一个带有静态节点和其他非静态节点. public class Stack 但是当我尝试使Node非静态时,它会给我这个警告“类型参数E隐藏了类型E” public class Stack 我告诉我一点理解,因为静态memeber是类的成员所以它不会给我一个警告但是当我使它成为

我正在编写一个堆栈,一个带有静态节点和其他非静态节点.

public class Stack

但是当我尝试使Node非静态时,它会给我这个警告“类型参数E隐藏了类型E”

public class Stack

我告诉我一点理解,因为静态memeber是类的成员所以它不会给我一个警告但是当我使它成为非静态时它属于实例.但这不是一个明确的想法.

最佳答案
当您已经定义范围时,它会警告您在范围中使用通用参数名称E.更改Node的通用参数名称是解决警告的一种方法:

public class Stack

但由于E已经存在,你应该只使用它;由于在泛型类型(Stack< object> .Node和Stack< String> .Node是不同类型)中定义,节点已经是通用的:

public class Stack

请注意,这是因为Node不是静态的,因此它具有对外部Stack< E>的引用.对象,因为这个E必须定义.如果Node是静态的,那么它与外部Stack< E>没有真正的关系.除了有效地在其词汇范围内之外的其他类型.

(编辑:李大同)

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

    推荐文章
      热点阅读