gpt4 book ai didi

java - 什么时候将类写成泛型类

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:08:41 25 4
gpt4 key购买 nike

我有课可以说

Class Rectange{
int height;
int side;
}

在哪些情况下我可以将此类设为通用类?如何确定我们要写一个泛型类?可能一个实际的例子会很好。

更新

  1. 使我们的类成为泛型的用例是什么?

  2. 我们将在哪些场景中使用泛型?

最佳答案

如果您希望任何提到的类型是可变的,您可以使此类成为通用类。

目前您的类仅包含对类型 int 的引用。如果你想使这个类型成为变量,你可以使用这段代码:

class Rectange<T extends Number> {
T height;
T side;
}

然后您可以创建实例,使用 Integer 或其他类型来存储 heightside:

class Main {
public static void main(String[] args) {
Rectange<Integer> intRect = new Rectange<>();
intRect.height = 12;
Integer intHeight = intRect.height; // no cast needed, the height is guaranteed to be an int

Rectange<Double> dblRect = new Rectange<>();
dblRect.height = 1.20076;
Double doubleHeight = dblRect.height; // this time, height is guaranteed to be an double
}
}

作为一个结论,我会说:如果必须使类型可变,请使用泛型。因此,根据您的用例,使用泛型可能很有用。

关于java - 什么时候将类写成泛型类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32090951/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com