博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java泛型初探
阅读量:6888 次
发布时间:2019-06-27

本文共 1410 字,大约阅读时间需要 4 分钟。

在做安卓项目中看到别人写的基类里各种用到泛型,能够看懂并使用。感觉对于Java学习还是很重要的一块,在以后的code生涯中会遇到很多,所以刷个博客作为学习笔记。

泛型(Template)比如你在写基类或者API之类的时候,由于Java是强类型语言,所以无法预料到将来继承你写的基类的人会用什么类型的数据,比如String、Integer或者是他自己定义的类。因此,泛型横空出世(这里全是我自己的见解,到底为什么出现泛型我也没有去查)。接下来举个实例,应该就比较好了解泛型的作用和使用了。

1 class Template
{ 2 public T getOb() { 3 return ob; 4 } 5 6 public void setOb(T ob) { 7 this.ob = ob; 8 } 9 10 private T ob;11 12 public Template(T ob) {13 this.ob = ob;14 }15 public void showOb() {16 System.out.println("ob的类型是:" + ob.getClass().getName());17 }18 }19 20 class Shape {21 private String color;22 23 public Shape(String color){24 this.color = color;25 }26 27 public void draw() {28 System.out.println("Color is" + getColor());29 }30 31 public String getColor() {32 return color;33 }34 35 public void setColor(String color) {36 this.color = color;37 }38 }39 40 public class TemplateTest{41 42 public static void main(String[] args) {43 Template
ob = new Template<>("88");44 ob.showOb();45 46 Template
shape = new Template<>(new Shape("RED"));47 shape.showOb();48 }49 }

输出结果:

ob的类型是:java.lang.Stringob的类型是:Shape

这里示例了将泛型使用String和自定义的Shape分别实现了,同理可以将泛型用在接口、抽象类等等上。

转载于:https://www.cnblogs.com/puyangsky/p/5104149.html

你可能感兴趣的文章
linux 学习10 shell 基础
查看>>
2015.10.14-TransactionScope测试
查看>>
HTML中id、name、class 区别
查看>>
Codeforces Round #442 (Div. 2) E Danil and a Part-time Job (dfs序加上一个线段树区间修改查询)...
查看>>
deeplab算法解析
查看>>
array_column()函数兼容低版本
查看>>
Redis配置sentinel模式
查看>>
Web文件管理:elFinder.Net(支持FTP)
查看>>
IDEA快捷键复习使用
查看>>
#001 为知笔记,测试发布到博客园
查看>>
textarea实现高度自适应
查看>>
forfiles
查看>>
基于python的web编程基础
查看>>
nginx之Geoip读取地域信息模块
查看>>
阿里云Redis加速Typecho博客访问
查看>>
一张图片解释怎么让多行文本垂直居中对齐
查看>>
使用PowerDesigner建立数据库模型
查看>>
Windows Phone 7 使用本地数据库【转】
查看>>
UOJ#22. 【UR #1】外星人
查看>>
不使用其他变量,交换两个变量的值
查看>>