码迷,mamicode.com
首页 > 编程语言 > 详细

【java】反射简单示例

时间:2017-04-08 16:03:48      阅读:238      评论:0      收藏:0      [点我收藏+]

标签:catch   hibernate   print   for   logs   开始   stat   opened   new   

技术分享
1 package 反射;
2 
3 public class Test反射 {
4     public static void main(String[] args) {
5         System.out.println(Runtime.getRuntime().getClass());//class java.lang.Runtime
6         Test反射 t=new Test反射();
7         System.out.println(t.getClass());//class 反射.Test反射
8     }
9 }
getClass

 

技术分享
 1 package 反射;
 2 
 3 public class Test反射 {
 4     public static void main(String[] args) {
 5         Test反射 t=new Test反射();
 6         //Class类是反射操作的源头,所有的反射都要从此类开始进行。
 7         Class<?> cls=t.getClass();//第1种Class类实例化方法,用的很少
 8         System.out.println(cls);//class 反射.Test反射
 9         Class<?> cls2=Test反射.class;//第2种Class类实例化方法,用的多,使用领域:Hibernate、Mybatis、Spring
10         System.out.println(cls2);//class 反射.Test反射
11         Class<?> cls3=null;
12         try {
13             cls3=Class.forName("反射.Test反射");//第3种Class类实例化方法,用的多。此处要写全名,即加上包名,否则报错。
14         } catch (ClassNotFoundException e) {
15             e.printStackTrace();
16         }
17         System.out.println(cls3);//class 反射.Test反射
18     }
19 }
Class类3种实例化方式

 

技术分享
 1 package 反射;
 2 class A{
 3     public A(){
 4         System.out.println("调用无参构造实例化对象。");
 5     }
 6     @Override
 7     public String toString() {
 8         return "调用toString()方法。";
 9     }
10 }
11 public class Test反射 {
12     public static void main(String[] args) {
13         Class<?> cls=null;
14         try {
15             cls=Class.forName("反射.A");
16         } catch (ClassNotFoundException e) {
17             e.printStackTrace();
18         }
19         Object o=null;
20         try {
21             o=cls.newInstance();
22         } catch (InstantiationException e) {
23             e.printStackTrace();
24         } catch (IllegalAccessException e) {
25             e.printStackTrace();
26         }
27         System.out.println(o);
28         /**
29          * 运行结果:
30          *    调用无参构造实例化对象。
31          *    调用toString()方法。
32          */
33     }
34 }
利用反射进行实例化对象

 

【java】反射简单示例

标签:catch   hibernate   print   for   logs   开始   stat   opened   new   

原文地址:http://www.cnblogs.com/xiongjiawei/p/6681894.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!