Java泛型和Class类用法示例
本文实例讲述了Java泛型和Class类用法。分享给大家供大家参考,具体如下:
一点睛
从JDK1.5之后,Java的Class类增加了泛型功能,从而允许使用泛型来限制Class类,例如,String.class的类型实际上是Class
二实战1
importjava.util.*; importjavax.swing.*; publicclassCrazyitObjectFactory2 { publicstaticTgetInstance(Class cls) { try { returncls.newInstance(); } catch(Exceptione) { e.printStackTrace(); returnnull; } } publicstaticvoidmain(String[]args) { //获取实例后无须类型转换 Dated=CrazyitObjectFactory2.getInstance(Date.class); JFramef=CrazyitObjectFactory2.getInstance(JFrame.class); } }
三实战2
1代码
importjava.lang.reflect.*; importjava.lang.annotation.*; publicclassCrazyitArray { //对Array的newInstance方法进行包装 @SuppressWarnings("unchecked") publicstaticT[]newInstance(Class componentType,intlength) { return(T[])Array.newInstance(componentType,length);//① } publicstaticvoidmain(String[]args) { //使用CrazyitArray的newInstance()创建一维数组 String[]arr=CrazyitArray.newInstance(String.class,10); //使用CrazyitArray的newInstance()创建二维数组 //在这种情况下,只要设置数组元素的类型是int[]即可。 int[][]intArr=CrazyitArray.newInstance(int[].class,5); arr[5]="疯狂Java讲义"; //intArr是二维数组,初始化该数组的第二个数组元素 //二维数组的元素必须是一维数组 intArr[1]=newint[]{23,12}; System.out.println(arr[5]); System.out.println(intArr[1][1]); } }
2运行
疯狂Java讲义
12
更多java相关内容感兴趣的读者可查看本站专题:《Java面向对象程序设计入门与进阶教程》、《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总》
希望本文所述对大家java程序设计有所帮助。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。