Java泛型编程-泛型类01

本文介绍了Java中的泛型类概念,通过示例展示了如何定义和使用泛型类。泛型类允许我们在类中使用类型参数,使得代码更加安全且可重用。在示例中,Entry类使用了类型参数K和V,用于表示键值对。实例化泛型类时,可以指定具体的类型如<String, Integer>,也可以省略类型参数,由编译器自动推断。需要注意的是,基本数据类型不能直接作为泛型类的类型参数,如Entry<String, int>是无效的。

Java泛型编程01-泛型类

首先来了解一下什么是泛型类?

泛型类:是有一个或者多个类型参数的类。

我们来编写一段示例代码来看:

package com.ch06.ch601;

public class Entry<K, V> {

    // 被用作实例变量的类型
    private K key;
    private V value;

    // 被用作方法的参数类型
    public Entry(K key, V value) {
        this.key = key;
        this.value = value;
    }

    // 被用作方法的返回值类型
    public K getKey() {
        return key;
    }

    // 被用作方法的返回值类型
    public V getValue() {
        return value;
    }

}

在这里我们可以看到,在类名后面的尖括号中指定了类型参数K和V。

在上面我们可以看到这些类型参数被用在了:

  • 实例变量的类型
  • 方法的参数类型
  • 返回值的类型

接着我们可以来实例化一个泛型类

Entry<String, Integer> entry = new Entry<>("ryh", 13);
// 等同于 new Entry<String, Integer>("ryh", 13);

这样的话就是一个包含方法 String getKey() 和方法 Integer getValue() 的普通类。

注意:我们的基本数据类型参数是不可以用作类的实例化的。例如 Entry<String, int> 这样在java中是无效的。

在上面构造泛型类对象时,我们还注意到可以在构造函数中省略类型的参数。它与 new Entry<String, Integer>(“ryh”, 13); 是同样的。因为构造函数的类型参数是可以自动推算的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值