泛型的定义与普通类定义相比,首先在类名后增加了由尖括号标识的类型变量,一般用T表示。T可以在泛型中的任何地方使用。对于泛化接口也是这样定义。

我们来看看普通类Box以及Box的泛型的代码:

(1)普通类Box的定义

public class MyBox{
private Object object;
public void add(Object object) {
this.object = object;
}
public object get() {
return object;
}
}

(2)Box类的泛型定义

public class MyBox<T>{
private T t;
public void add(T t) {
this.t = t;
}
public T get() {
return t;
}
}

在MyBox类的泛型定义中,将类声明中的“public class MyBox”改为“public class MyBox<T>”,并且把MyBox类体中所有的Object都用T进行替换,从而将MyBox定义为能存放各种确定类型对象容器的抽象类型

package practice;

public class MyBoxTest {

public static void main(String[] args) {
// TODO Auto-generated method stub
MyBox<String> aBox = new MyBox<String>();
aBox.add(new String("阿"));
String i = aBox.get();
System.out.println(i);
}
}

输出:

public class MyBoxTest {

public static void main(String[] args) {
// TODO Auto-generated method stub
MyBox<Integer> aBox = new MyBox<Integer>();
aBox.add(newInteger("2018"));
Integer i = aBox.get();
System.out.println(i);
}
}

输出:

2018

转载于:https://www.cnblogs.com/tiandiou/p/8419455.html

java基础 泛型类的定义相关推荐

  1. java基础:注解的定义与使用

    java中的注解 1.该如何来理解注解? 乔布斯重新定义了手机,罗太君重新定义了傻逼.自然而然的就给罗太君贴上了傻逼的标签,不熟悉老罗的人,不知道他当教师,办博客,做手机,殊不知老罗还有"理 ...

  2. Java基础 - 变量的定义和使用

    变量定义 1 public class Main { 2 3 public static void main(String[] args) { 4 5 // 定义byte类型的变量 6 byte b ...

  3. Java基础编程题目——定义一个比较两个数大小的方法

    编写一个方法判断两个数的大小,并返回较大的值 import java.util.Scanner;public class Max {public static void main(String[] a ...

  4. 【Java基础】变量定义与类型、进制转换

  5. 面试资料-JAVA基础知识

    java基础: JDK,JRE: JDK是面向开发人员使用的SDK.java开发工具. JRE是Java Runtime Enviroment是指Java的运行环境,是面向Java程序的使用者.基础类 ...

  6. java 基础 泛型

    泛型是什么? 泛型,即"参数化类型".一提到参数,最熟悉的就是定义方法时有形参,然后调用此方法时传递实参.那么参数化类型怎么理解呢?顾名思义,就是将类型由原来的具体的类型参数化,类 ...

  7. 【JAVA基础】java基础之-泛型详解

    写在前面的话 脑子是个好东西,可惜的是一直没有搞懂脑子的内存删除机制是什么,所以啊,入行多年,零零散散的文章看了无数,却总是学习了很多也忘了很多. 痛定思痛的我决定从今天开始系统的梳理下知识架构,记录 ...

  8. Java基础教程,第三讲,运算符 变量定义 数据类型转换

    2019独角兽企业重金招聘Python工程师标准>>> 学完此次课程,我能做什么? 学完此次课程我们可以学会Java的运算符,以及数据类型的自动转换和强制转换. 学习此次课程,需要多 ...

  9. 【零基础学Java】—类的定义(七)

    [零基础学Java]-类的定义(七) 一.事物与类的对比 现实世界的一类事物 属性:事物的状态信息 行为:事物能够做什么 Java中用class描述事物也是如此 成员变量:对应事物的属性 成员方法:对 ...

  10. java定义一个eat方法_小黄鸭系列java基础知识 | java中的方法

    前言 今天我们要探讨的问题,是java基础语法的最后一个问题,也就是java中的方法,今天主要从以下几个方面来介绍: 方法是什么(定义) 方法的分类 方法的调用 应该说,学完今天的知识,你至少应该看懂 ...

最新文章

  1. 〖Linux〗Ubuntu13.10中使用虚拟机对MTK手机进行线刷
  2. Android添加垂直滚动scrollview
  3. vba怎么安装_学VBA,这些最基础的概念一定要知道
  4. 3-16Pytorch与随机抽样
  5. 2018网易在线笔试题
  6. 逼疯一个程序员有多简单?
  7. poj3233(Matrix Power Series)快速幂
  8. java数组名加括号_数组作参数被使用时,数组名后必须加方括号
  9. 【88.4】HTTP权威指南
  10. ArduinoUNO实战-第七章-PWM调光
  11. Java锁与线程的那些“不可描述”的事儿
  12. matlab fgetc,C语言fgetc和fputc函数用法详解(以字符形式读写文件)
  13. c加加中print是什么意思_数学中质数和合数是什么意思
  14. 服务器操作系统查询命令行,服务器操作系统查看命令行
  15. [FFmpeg] AVPacket 的使用记录(初始化、引用、解引用、释放)
  16. python入门须知
  17. adb 命令输入字符串
  18. 网络打印两个基本端口(LPD和9100)的相关知识
  19. 【社区周会】2021-06-08 内容概要
  20. Android Realm数据库完美解析

热门文章

  1. 是什么浪费了运维的工作时间?
  2. 求求老板们做个人吧!
  3. 程序员,成为北京人,只差月薪 7w 了。
  4. 九大厂商联合推出「快应用」,围攻微信?
  5. 2 imwrite中文路径_如何为FreePBX/Asterisk配置中文语音支持
  6. socket怎么同时监听两个端口_三十岁了,我同时爱上两个男人,我现在不知道怎么办...
  7. JVM的4种垃圾回收算法、垃圾回收机制与总结
  8. 关于vue项目的文件组织
  9. 关于oracle样例数据库emp、dept、salgrade的mysql脚本复杂查询分析
  10. windows server 2008 r2 x64 enterprise service pack1中aspjpeg.dll安装