Java高级——泛型
时间:2019-10-19
本文章向大家介绍Java高级——泛型,主要包括Java高级——泛型使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
本文主要讲述泛型的使用
1、在集合中的使用
2、自定义泛型类、泛型接口、泛型方法
3、泛型与继承的关系
4、通配符
由于第一点和第二点在平常的编码工作中已熟练,本文重点讲述后面两点。
直接show the code:
package com.learn; import java.util.List; public class ParentGeneric<T> { private String name; private int id; private T t; public String getName() { return name; } public void setName(String name) { this.name = name; } public int getId() { return id; } public void setId(int id) { this.id = id; } public T getT() { return t; } public void setT(T t) { this.t = t; } // 声明泛型方法-单个 public <E> E getE(E e) { return e; } // 声明泛型方法-多个 public <E> E[] getArray(E[] arr) { return arr; } // 声明泛型方法-交互 public <E> void fromArrayToList(E[] arrayE, List<E> listE) { for (E e : arrayE) { listE.add(e); } } @Override public String toString() { return "ParentGeneric [name=" + name + ", id=" + id + ", t=" + t + "]"; } } /* * 继承泛型类或接口时,可以指名泛型的类型 * * 通常在DAO处理的时候,采用指名泛型类型(泛型就是某个Data Access Object) * 如:public class StudentDAO extends AbstractDAO<Student>{内部CRUD方法} * 同理: public class TeacherDAO extends AbstractDAO<Teacher>{内部CRUD方法} * * 分析源码:学习泛型方法 * public interface Collection<E> extends Iterable<E> { * <T> T[] toArray(T[] a); * } * */ class SonOneGeneric<T> extends ParentGeneric<T> { } class SonTwoGeneric extends ParentGeneric<Integer> { }
原文地址:https://www.cnblogs.com/gzhcsu/p/11703389.html
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释