JAVA学习代码——泛型
来源:互联网 发布:html 展示json数据 编辑:程序博客网 时间:2024/06/06 05:13
泛型的定义
泛型的格式
package 泛型;import java.util.ArrayList;import java.util.List;/** * 如何用泛型规定集合的类型:泛型集合里面可以存入泛型类型的实例,也可以存入泛型的子类型的实例 * 泛型不能为基本类型的,只能是引用类型,非要使用基本类型,需要使用它们的包装类(int->Integer。。。。) */public class TestGenneric {/** * 带有泛型——Course,的List类型属性, <>括号中为规定的类型,List只能存放规定的类型 */public List<Course> courses;// 为了方便,定义为public,工作中应该为private// 在构造方法中初始化courses属性,public TestGenneric() {// 定义的courses是带有泛型的,所以实例化的时候也要定义为泛型this.courses = new ArrayList<Course>();}/** * 测试添加 */public void testAdd() {Course cr1 = new Course("1", "大学语文");courses.add(cr1);// 泛型编译期间的检查:泛型集合中不能添加泛型集合规定的类型及其子类型以外的对象,否则会报错// 下面语句报错:类型List<Course>中的方法add(Course)对于参数(String)不适用// courses.add("能否添加一些奇怪的东西呢???");Course cr2 = new Course("2", "JAVA基础");courses.add(cr2);}/** * 测试循环遍历foreach */public void testForeach() {// Course cr:直接作为Course类型取出,List集合里的每一个元素都为Course类型for (Course cr : courses) {System.out.println(cr.getId() + ":" + cr.getName());}}/** * 泛型集合可以添加泛型子类的对象实例 */public void testChild(){ChildCourse ccr= new ChildCourse();//创造一个ChildCourse类型的对象实例ccrccr.setId("3");//利用set写入idccr.setName("我是子类型的课程对象实例");courses.add(ccr);}/** * 泛型不能使用基本类型 */public void testBasicType(){//List<int>list= new ArrayList<int>();//报错:int上有语法错误List<Integer>list= new ArrayList<Integer>();list.add(1);System.out.println("基本类型的包装类作为泛型:"+list.get(0));}// --------主函数---------public static void main(String[] args) {TestGenneric tg = new TestGenneric();tg.testAdd();tg.testForeach();tg.testChild();tg.testForeach();tg.testBasicType();}}
0 0
- JAVA学习代码——泛型
- JAVA学习代码——集合
- JAVA学习代码——数组排序
- JAVA学习代码——File文件
- JAVA学习代码——字符串操作
- JAVA学习代码——异常
- JAVA学习代码——回音壁
- JAVA学习代码——弹窗
- JAVA学习代码——知识点
- JAVA学习代码——质数判断
- JAVA学习代码——栈
- JAVA学习代码——方法
- JAVA学习代码——二重循环
- JAVA学习代码——EXCEL读取
- JAVA学习代码——日志文件
- JAVA学习代码——重命名文件夹
- JAVA学习代码——了解java.io
- Java学习笔记——伪代码及程序控制
- Spfa单源最短路径算法
- virtual Box 安装 增强包
- ArrayBlockingQueue源码阅读
- Automatic Reference Counting (ARC) 总结
- 介绍两种风格的URL
- JAVA学习代码——泛型
- 数据结构之栈的Java实现
- 操作系统的基本安全机制
- GOF之责任链模式
- Block编程总结【iOS】
- 正则表达式
- offsetTop、offsetLeft、offsetWidth、offsetHeight
- hdu 5671 (Matrix)
- 细说vb91错误