Java-使用参数化方法扩展接口,我不需要参数

时间:2014-10-23 17:22:08

标签: java interface

我有一个界面:

 public interface ITrafficParameter<T> {
  public T generateParameter(T minimumNumber, T maximalNumber);  
}

我有三个类使用此接口和方法generateParameters。 在两个类我使用generateParameter方法。有这两个参数(T minimumNumber和T maximal Number) 但 在第三类方法中,generateParameter不需要这两个参数,它的实现如下所示

  @Override
  public Boolean generateParameter(Boolean minimumNumber, Boolean maximalNumber) {
     return Math.random() < 0.5;
  }

问题在于在主要类中使用:

ThirdClass thirdClass = new ThirdClass();
Boolean flag = thirdClass.generateParameter(Here not needed parameters to implementing)

但是在其他类中(实现了这个接口,使用了参数)

就像你看到我在这里不需要这两个参数和我的问题 - 我可以覆盖这个方法以便在没有参数的情况下工作吗?或者我可以在Interface中定义generateParameter方法,比如generateParameter(T ...) - 我不记得了...... 请帮助我

1 个答案:

答案 0 :(得分:0)

我同意这些意见。此外,您的ThirdClass会返回Boolean而不是T(您可能希望将其指定给public interface ITrafficParameter<T extends Number>)。如果您需要其他方法签名,即没有最小和最大参数并返回Boolean而不是T,只需在您的界面中声明第二个方法。