集合框架------泛型方法
2015-11-20 22:36
267 查看
/* 使用泛型的好处: 1、将运行时期出现的问题ClassCastException,转移到了编译时期, 方便于程序员解决问题你,让运行时期的问题减少,安全。 2、避免了强制转换的麻烦。 泛型格式: 通过<>来定义要操作的引用数据类型。 通常在集合框架中常见。 */ class Demo<T>{ public void show(T t){ System.out.println("show:"+t); } public void print(T t){ System.out.println("print:"+t); } } public class GenericDemo { public static void main(String[] args) { Demo<Integer> d=new Demo<Integer>(); d.show(new Integer(5)); Demo<String> d1=new Demo<String>(); d1.print("haha"); } }
这个程序中定义的 Demo对象 d 是 Integer类型的,所以在 d.show()中必须要添加 Integer类型的数据,如果添加其他类型的数据,将会在编译的时候出现错误,导致无法编译。如下图:
泛型类定义的泛型,在整个类中有效,如果被方法使用,那么泛型类的对象明确要操作的具体类型后, 所有要操作的类型就已经固定。为了让不同方法可以操作不同类型,而且类型还不确定,那么可以将泛型定义在方法上。
class Demo{ public <T> void show(T t){ System.out.println("show:"+t); } public <Q> void print(Q q){ System.out.println("print:"+q); } } public class GenericDemo{ public static void main(String[] args) { Demo d=new Demo(); d.show("haha"); d.show(Integer(5)); d.print("heihei"); } private static Object Integer(int i) { // TODO 自动生成的方法存根 return null; } }
结果:
相关文章推荐
- Android 注册
- Android之Handler用法总结
- 多线程——控制线程状态
- 南大软院大神养成计划——第五天
- python学习笔记(3)
- HAL驱动库学习-ADC
- hdu1102 最小生成树 特殊处理
- bzoj-1941 Hide and Seek
- Android 在WindowManager添加View进行绘制时,限制在Window内部绘制和允许绘制到窗口之外区域的方法
- 苏黄永郦第二周的读书报告
- ThinkServer TD340服务器安装操作系统
- iOS二维码
- apt-get update 与 apt-get upgrade区别
- Android Studio的Gradle添加重复依赖的问题
- oracle用户创建及权限设置
- 状态: 失败 -测试失败: Listener refused the connection with the following error: ORA-12505, TNS:listener does
- LeetCode:Minimum Depth of Binary Tree
- 安卓开发过程中权限大全
- 安卓开发过程中权限大全
- Python 内置模块turtle模块的使用