Java泛型反射机制(一)
2016-04-02 15:35
381 查看
/** * * @author Administrator * 功能:泛型的必要性(参数化类型)(安全简单) */ package com.test; import java.util.*; public class Test { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub // ArrayList al = new ArrayList(); // //创建一只狗 // Dog dog1 = new Dog(); // //放入到集合中 // al.add(dog1); //该句会报错,ArrayList返回的是Object类型的必须强转或者使用泛型 //Dog temp2 = al.get(0); // //取出 // //强制类型转换时要求开发者对实际参数类型可以预知的情况下进行的,编译器不提示错误 //存在安全隐患 // //Dog temp = (Dog)al.get(0); // // //编译器不报错,存在安全隐患,报类型转换异常 // //Cat temp = (Cat)al.get(0); //泛型的好处是在编译时检查类型的安全 //使用泛型不会报错 ArrayList<Dog> al = new ArrayList<Dog>(); Dog temp = al.get(0); } } class Cat { private String color; private int age; public String getColor() { return color; } public void setColor(String color) { this.color = color; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } } class Dog { private String name; private int age; public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } }
相关文章推荐
- 大数乘法[JAVA实现]-经典笔试题
- Java基础——成员变量、局部变量和静态变量的区别
- RxJava实例(一)
- 深入Spring之web.xml
- Java技术_Java千百问(0019)_java中如何循环执行
- 彻底解决Spring mvc乱码
- JVM版本引起的一个错误java.lang.UnsupportedClassVersionError
- 关于eclipse下开发android应用的几个常用插件
- spring mvc restful工程demo
- 在Windows的cmd控制台执行java程序
- Java书籍推荐
- Java并发编程:volatile关键字解析
- 2 Java基础语法(关键字,标识符,注释,常量,进制转换,变量,数据类型,数据类型转换)
- Java学习系列——xml学习基础
- 深入Java核心 Java内存分配原理精讲
- Fresco(Facebook开源的android项目)图片缓存框架的eclipse整合与使用探索(较详细配置说明)
- 多次运行,端口被占用错误: 代理抛出异常错误: java.rmi.server.ExportException: Port already in use: 1099; nested exception
- eclipse安装activiti工作流插件
- MyEclipse svn authorization failed
- SpringMvc:视图和视图解析器