我想用另外两个参数来对类进行参数化,以便我可以独立提供其中之一,即AdGroupIdentifier或KeywordIdentifier。但是我收到以下警告:The type parameter KeywordIdentifier is hiding the type KeywordIdentifier.
你认为我做错了吗?正确的做法是什么?
谢谢你的帮助!
public class Metrics <T extends AdGroupIdentifier, KeywordIdentifier> {
public void addMetric(T identifier){ .... }
}
最佳答案
看来您有一个名为KeywordIdentifier
的类。名为KeywordIdentifier
的类参数与具有相同名称的类无关,但可能使人类感到困惑。这正是编译警告的含义。
BTW根据命名约定,您应该倾向于使用一个(或最多2个)大写字母来调用type参数。在您的情况下,将类定义更改为
public class Metrics <T extends AdGroupIdentifier, K>
或者,如果您希望seconds参数扩展类
KeywordIdentifier
:public class Metrics <T extends AdGroupIdentifier, K extends KeywordIdentifier>
关于java - Java参数化类警告,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23735104/