当 Java 中已经包含数组时,为什么还需要用到泛型?
Java 中的数组用于存储同类型数据,而泛型允许用户动态选择方法或类构造函数接受的类型(类),动态地。
通过定义类泛型,让其类型安全,即它可以对任何数据类型进行操作。为了理解泛型,让我们考虑一个示例 -
示例
class Student<T>{ T age; Student(T age){ this.age = age; } public void display() { System.out.println("Value of age: "+this.age); } } public class GenericsExample { public static void main(String args[]) { Student<Float> std1 = new Student<Float>(25.5f); std1.display(); Student<String> std2 = new Student<String>("25"); std2.display(); Student<Integer> std3 = new Student<Integer>(25); std3.display(); } }
输出
Value of age: 25.5 Value of age: 25 Value of age: 25
为什么我们需要泛型
在代码中使用泛型,您将获得以下好处 -
编译时类型检查 - 通常,当您使用类型(常规对象)时,当您将不正确的对象作为参数传递时,它会提示在运行时发生错误。
而当您使用泛型时,错误将在编译时发生,这很容易解决。
代码重用 - 您可以使用泛型类型编写方法、类或接口一次,并且可以使用此代码多次使用各种参数。
对于某些类型,使用正式类型,您需要强制转换对象并使用。使用泛型(在大多数情况下),您可以直接传递所需类型的对象,而无需依赖强制转换。
广告