有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java使用标记接口使方法更通用

比如

我在一个抽象类中有一个具有以下签名的方法

Set<CarRecommendation> generateRecommendations(String accountId){

  // do something

}

为了使上述方法通用并兼容不同类型的推荐,我考虑使用一个空接口,让CarRecommendation和BikereRecommendation实现它

public interface Recommendation {

}


public class CarRecommendation implements Recommendation{

    // more stuff 
}

public class BikeRecommendation implements Recommendation{

    // more stuff
}

这样我就可以将抽象类中的方法签名更改为

Set<? extends Recommendation> generateRecommendations(String accountId)

定义标记接口的唯一目的是使方法通用,这是一种好的做法吗?如果不是,那么更好的方法是什么?谢谢


共 (0) 个答案