平时看java源代码的时候,如果碰到泛型的话,我想? T K V E这些是经常出现的,但是有时想不起来代表什么意思,今天整理下: 

? 表示不确定的java类型。 
T 表示java类型。
K V 分别代表java键值中的Key Value。
E 代表Element。 Object跟这些东西代表的java类型有啥区别呢?
Object是所有类的根类,是具体的一个类,使用的时候可能是需要类型强制转换的,但是用T ?等这些的话,在实际用之前类型就已经确定了,不需要强制转换。
追问:
也就是说,这个方法能知道返回的是哪种类型(父类),就用T行了?如果完全不知道的就用?用T的得到的对象就不需要类型转换了,而用?的就必需用强转了!
追答:
第一种是固定的一种泛型,第二种是只要是Object类的子类都可以,换言之,任何类都可以,因为Object是所有类的根基类
固定的泛型指类型是固定的,比如:Interge,String. 就是<T extends Collection> <? extends Collection> 这里?代表一个未知的类型,
但是,这个未知的类型实际上是Collection的一个子类,Collection是这个通配符的上限.
举个例子
class Test <T extends Collection> { } <T extends Collection>其中,限定了构造此类实例的时候T是一个确定类型(具体类型),这个类型实现了Collection接口,
但是实现 Collection接口的类很多很多,如果针对每一种都要写出具体的子类类型,那也太麻烦了,干脆还不如用
Object通用一下。
<? extends Collection>其中,?是一个未知类型,是一个通配符泛型,这个类型是实现Collection接口即可。 _________________________上面讲的是什么鬼,当你知道引入通配符泛型的由来之后(下面代码由java1234.com提供)_________________________________________________________________________________________

aaarticlea/png;base64,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" alt="" />

The method take(Animal) in the type Test is not applicable for the arguments (Demo<Dog>)
The method take(Animal) in the type Test is not applicable for the arguments (Demo<Cat>)
The method take(Animal) in the type Test is not applicable for the arguments (Demo<Animal>)

aaarticlea/png;base64,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" alt="" />

当引入泛型之后,遇到这种情况,参数怎么写都不适合,总有2个方法不适用,为了给泛型类写一个通用的方法,这时候就需要引入了 ?通配符的概念。

aaarticlea/png;base64,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" alt="" />


public class Demo <T extends Animal>{

    private T ob;

    public T getOb() {
return ob;
} public void setOb(T ob) {
this.ob = ob;
} public Demo(T ob) {
super();
this.ob = ob;
} public void print(){
System.out.println("T的类型是:"+ob.getClass().getName());
}
}

参考:

https://www.cnblogs.com/lwbqqyumidi/p/3837629.html


https://blog.csdn.net/s10461/article/details/53941091

class<T>和 class<?>类型 有什么区别的更多相关文章

  1. Java生鲜电商平台-商品分类表和商品类型表的区别与数据库设计

    Java生鲜电商平台-商品分类表和商品类型表的区别与数据库设计   二者服务的对象不一样 目的也是不一样的 商品分类是为商品服务的 用来管理商品 商品类型是为扩展属性服务的 用来管理属性 举例:[转] ...

  2. mysql中tinyint、smallint、int和bigint类型的用法区别

    mysql中tinyint.smallint.int和bigint类型的用法区别: 在MySQL的数据类型中,Tinyint的取值范围是:带符号的范围是-128到127.无符号的范围是0到255(见官 ...

  3. VC中不同类型DLL及区别

    1. DLL的概念可以向程序提供一些函数.变量或类. 静态链接库与动态链接库的区别:(1)静态链接库与动态链接库都是共享代码的方式.静态链接库把最后的指令都包含在最终生成的EXE文件中了:动态链接库不 ...

  4. Python函数小结(1)--参数类型(*, ** 的区别), 闭包

    刚开始学习python,python相对于java确实要简洁易用得多.内存回收类似hotspot的可达性分析, 不可变对象也如同java得Integer类型,with函数类似新版本C++的特性,总体来 ...

  5. C# 值类型,引用类型区别

    值类型/引用类型 作为所有类型的基类,System.Object提供了一组方法,这些方法在所有类型中都能找到,其中包含toString方法及clone等方法. 引用类型和值类型都继承自System.O ...

  6. 【转】C#详解值类型和引用类型区别

    通用类型系统 值类型 引用类型 值类型和引用类型在内存中的部署 1 数组 2 类型嵌套 辨明值类型和引用类型的使用场合 5 值类型和引用类型的区别小结   首先,什么是值类型,什么是引用类型? 在C# ...

  7. pandas数据类型(二)与numpy的str和object类型之间的区别

    现象: Numpy区分了str和object类型,其中dtype(‘S’)和dtype(‘O’)分别对应于str和object. 然而,pandas缺乏这种区别 str和object类型都对应dtyp ...

  8. #define与typedef在重定义类型中的区别

    #define 为完全的替换 typedef 重新定一个数据类型 eg #define charp1 char* typedef char* charp2charp1 a,b; //a char* b ...

  9. delphi编程里的bool跟boolean类型有什么区别

    bool是LongBool类型. Delphi中定义了四种布尔类型:Boolean,ByteBool,WordBool和LongBool.后面三种布尔类型是为了与其他语言兼容而引入的,一般情况下建议使 ...

随机推荐

  1. java中的块

    之前没听过这个概念 块是java类中不太常见的一个元素.声明方式与方法体类似,分为static块和实例块两种. 实例块: {块体} 实例块不能直接调用,每一次调用构造方法创建对象的时候,都会在调用构造 ...

  2. 2018-2019-2 网络对抗技术 20165202 Exp4 恶意代码分析

    博客目录 一.实践目标 二.实践内容 1.系统运行监控 2.恶意软件分析 三.实验步骤 四.基础问题回答 五.遇到的问题及解决 六.实验总结 一.实践目标 监控你自己系统的运行状态,看有没有可疑的程序 ...

  3. nw + iframe嵌入page 滚动条问题

    iframe 加载完之后会在原尺寸基础上增加4像素(因此我用以下方法处理): <iframe id="myiframe" style="visibility: hi ...

  4. Codeforces1106F 【BSGS】【矩阵快速幂】【exgcd】

    首先矩阵快速幂可以算出来第k项的指数,然后可以利用原根的性质,用bsgs和exgcd把答案解出来 #include<bits/stdc++.h> using namespace std; ...

  5. HDU 1234:开门人和关门人

    开门人和关门人 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Su ...

  6. 实验吧—隐写术——WP之 欢迎来到地狱

    解压压缩包后出现三个文件.jpg .zip .docx 发现图片打开不显示,用winhex打开发现缺少文件头,将jpg的文件头补上 保存后图片可以打开 是一个百度网盘的链接,注意l和1的区别,网盘里是 ...

  7. calc()语法

    什么是calc()? 学习calc()之前,我们有必要先知道calc()是什么?只有知道了他是个什么东东?在实际运用中更好的使用他. calc()从字面我们可以把他理解为一个函数function.其实 ...

  8. web开发的一些总结

    现在我们是在互联网的时代,到处可以使用internet 这些年的发展,让we 成为了当前开发的主流,包括现在好多的移动端开发, 很多也是使用web 页面进行呈现,因为web 拉近了你我之间的距离.对于 ...

  9. windows 版nginx 的一些基础知识

    nginx的Windows版本使用原生Win32 API(非Cygwin模拟层).当前nginx/Windows只使用select作为通知方法,所以不要期待它有很高的性能和扩展性.鉴于这点和一些已知问 ...

  10. java 多线程之 线程优先级和守护线程

    线程优先级的介绍 java 中的线程优先级的范围是1-10,默认的优先级是5."高优先级线程"会优先于"低优先级线程"执行. java 中有两种线程:用户线程和 ...