java - 什么时候应该使用泛型来定义类型之间的关系?

标签 java generics

当使用泛型时,这里有点困惑。我看过 Java Generics?但仍有一些问题。

说我有:

public class Honda implements ICar(){
}

public class Opel implements ICar(){
}

我应该使用:

public class Person{
    ICar car;
    .
    .
    public Person (ICar c){
        car = c;
    }
}

public class Person<T extends ICar>{
    T car;
    .
    .
    public Person(T c){
        car = c;
    }
}

还是取决于执行的任务?

仅用于聚合关系(容器等)的泛型;也就是说,它们只是用于集合吗?

最佳答案

一个人通常不会用一种汽车参数化。只有非常讨厌的人是由他们的汽车定义的。人们也(及时)更换汽车。所以我不会参数化这个类,即使只是为了语义。

在进入此类编程细节之前,请考虑一下您尝试从现实世界中模仿的内容。

关于java - 什么时候应该使用泛型来定义类型之间的关系?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11436792/

相关文章:

c# - 我可以将泛型设为可选,默认为某个类吗?

java - 上下文感知推荐引擎

java - 从命令行运行 Eclipse 项目

java - ListView getChildrenCount 为 0

java - Java/Scala 中的简单视频解码

c# - 在 C# 中转换为泛型类型

java - 如何确定 Java 泛型是否实现了特定接口(interface)?

java - 在 Java 中单击 g.drawString() 时更改 boolean 值

c# - 为什么 C# 中的这种隐式类型转换会失败?

c# - 通用接口(interface)