Java基础篇(泛型<T>常见用法)
2016-04-19 07:41
597 查看
//单泛型 class Test1<T> { T t; public Test1(T t) { this.t = t; } void sys() { System.out.println("a= " + t); } } // 多泛型 class Test2<M, R> { M m2; R r2; public Test2(M m2, R r2) { this.m2 = m2; this.r2 = r2; } public void sys() { System.out.println("姓名: " + m2 + " 年龄 " + r2); } } // 泛型嵌套 class Info<A, B> { private A name; private B age; public Info(A name, B age) { this.name = name; this.age = age; } public A getName() { return name; } public B getAge() { return age; } } class List<L> { public L item; public List(L item) { this.item = item; } public L getItem() { return item; } } public class Fan { public static void main(String args[]) { // 最基本的泛型 Test1<String> t1 = new Test1<String>("Hello"); t1.sys(); // int会报错,应该用Integer包装类 Test2<String, Integer> t2 = new Test2<String, Integer>("张三", 11); t2.sys(); // 嵌套的泛型 Info<String, Integer> info = null; List<Info<String, Integer>> list = null; info = new Info<String, Integer>("李四", 12); list = new List<Info<String, Integer>>(info); System.out.println("姓名 " + list.getItem().getName()); System.out.println("年龄 " + list.getItem().getAge()); // 通过泛型方法返回泛型类 Test1<String> t11 = fun("World"); t11.sys(); } // <T> 返回的泛型类的类型 // Test1<T>泛型类 // T para 泛型参数 // 三个泛型必须一致 public static <T> Test1<T> fun(T para) { Test1<T> temp = new Test1<T>(para); return temp; } }
运行结果如下
相关文章推荐
- 《Java实验四》
- eclipse连接不上手机
- [JAVA]Listener监听模式的学习
- java的访问权限
- SpringMVC+Spring+Mybatis整合程序之整合
- Java学习笔记---IO流笔记
- spring,springmvc,mybatis基本整合(一)--xml文件配置方式(2)
- Java 把一个文件夹中的所有文件复制到另一个文件夹中
- JAVA实现导出Excel(POI)
- Java线程和线程同步 - 线程(2)
- JAVA中字符串比较equals()和equalsIgnoreCase()的区别
- Java获取指定文件夹内的全部文件名称
- 基础02 Java 跨平台原理
- Java中的IO操作(一)
- Spring 获取propertise文件中的值
- spring4纯注解方式实现aop配置
- Spring简单总结part1
- MyBatis与Spring设置callSettersOnNulls
- springframework中的BeanPostProcessor(后处理bean)
- 浅谈JAVA中两种比较方式==和equals