java中泛型--把泛型从文言文解释为白话文

原创 2016年08月28日 17:02:39

java中声明泛型类的方式如下:

类<T>

其中T代表类型的名称。

那么泛型到底是什么呢?

首先,你要记住以上述形式声明的类叫做泛型类。举个例子

public class AnyClass<T, K> {
    private T t;
    private K k;
    public void doSomeThing(T t, K k)
    {
        this.t = t;
        this.k = k;
    }

}

这里,必须要强调一下的是,要声明泛型一定要紧挨着类名后尖括号<T,K>这样的形式,这里的T,K表示有两个类型的参数,并且数量是不受限制的。

你要理解的是这里的T和K表示的是类型,例如String,List这样的东西。唯一要注意的一点是:这里的T或者K并不能表示为基本类型,只可以是引用类型。

我们想一个类似的类作为对比,来具体理解下。

类一:

public class AnyClass {
    private String t;
    private List k;
    public void doSomeThing(String t, List k)
    {
        this.t = t;
        this.k = k;
    }
}

类二:

public class AnyClass {
    private Integer t;
    private Double k;
    public void doSomeThing(Integer t, Double k)
    {
        this.t = t;
        this.k = k;
    }
}
我这里要说明的是,上面的泛型类可以完全胜任类一和类二的功能。也就是说泛型类中的类型T和K是参数化的类型,什么叫参数化的类型,就是具体的T或K类型是由你来决定的。比如: AnyClass<String, List> class1 = new AnyClass<String, List>();通脱实例化这里的T,K,我们这个类的功能就可以达到和类一同样的效果。同理:

AnyClass<Integer, Double> class2 = new AnyClass<Integer, Double>();可以达到类二同样的效果。而泛型只定义一个就可以搞定,这也可以看出泛型的方便之处。



版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Java中的泛型

  • 2016-10-22 12:08
  • 4.37MB
  • 下载

Java 实现泛型List

  • 2014-08-16 22:24
  • 13KB
  • 下载

JAVA 泛型由浅入深详细不过的解释

JAVA泛型? T K V E等代表的意思 博客分类:  Java JavaC#C++CSQL  平时看java源代码的时候,如果碰到泛型的话,我想? T K V E这些是经常...

Java泛型和集合

  • 2015-12-28 20:59
  • 5.39MB
  • 下载

Java 泛型通配符解释

前言 最近看Rxjava retrofit 中到处都是泛型类型定义,不得不重新整理一下资料,简单介绍,满足基本理解使用。定义什么是泛型?泛型,即“参数化类型”。一提到参数,最熟悉的就是定义方法时有形...

java泛型详解

  • 2015-11-05 17:21
  • 851KB
  • 下载

java泛型的使用

  • 2017-03-17 15:43
  • 35KB
  • 下载

java泛型的解释

看视频的时候曾经看到过说java的泛型只是模拟出来的,只在编译阶段有效。对此很不理解,后来经过摸索发现了一点规律: 定义了泛型的限定之后,编译器会在编译阶段对实现了参数化的类型实例进行检查,例如: ...

详解java的泛型

  • 2012-12-08 21:55
  • 67KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)