反射实例一
来源:互联网 发布:java执行vbs 编辑:程序博客网 时间:2024/06/03 16:50
package com.watermelon.reflect;public class ClassDemo1 { public static void main(String[] args) { //Foo的实例对象如何表示 Foo foo1 = new Foo();//foo1就表示出来了. //Foo这个类 也是一个实例对象,Class类的实例对象,如何表示呢 //任何一个类都是Class的实例对象,这个实例对象有三种表示方式 //第一种表示方式--->实际在告诉我们任何一个类都有一个隐含的静态成员变量class Class c1 = Foo.class; //第二中表达方式 已经知道该类的对象通过getClass方法 Class c2 = foo1.getClass(); /*官网 c1 ,c2 表示了Foo类的类类型(class type) * 万事万物皆对象, * 类也是对象,是Class类的实例对象 * 这个对象我们称为该类的类类型 * */ //不管c1 or c2都代表了Foo类的类类型,一个类只可能是Class类的一个实例对象 System.out.println(c1 == c2); //第三种表达方式 Class c3 = null; try { c3 = Class.forName("com.watermelon.reflect.Foo"); } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } System.out.println(c2==c3); //我们完全可以通过类的类类型创建该类的对象实例---->通过c1 or c2 or c3创建Foo的实例对象 try { Foo foo = (Foo)c1.newInstance();//需要有无参数的构造方法 foo.print(); } catch (InstantiationException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IllegalAccessException e) { // TODO Auto-generated catch block e.printStackTrace(); } }}class Foo{ void print(){ System.out.println("foo"); }}
package com.watermelon.reflect;public class ClassDemo2 { public static void main(String[] args) { Class c1 = int.class;//int 的类类型 Class c2 = String.class;//String类的类类型 String类字节码(自己发明的) Class c3 = double.class; Class c4 = Double.class; Class c5 = void.class; System.out.println(c1.getName()); System.out.println(c2.getName()); System.out.println(c2.getSimpleName());//不包含包名的类的名称 System.out.println(c5.getName()); }}
阅读全文
0 0
- C# 反射实例 一
- 反射实例一
- java 反射机制(一)简单实例
- 反射实例
- 反射实例
- 反射实例
- java反射机制(一)—— 利用反射机制实例化对象
- 反射一
- 反射(一)
- 反射一
- C#反射实例讲解
- Java反射实例
- java反射实例
- C#反射实例
- c# 反射使用实例
- 反射实例及概念
- C#反射实例
- C#反射实例讲解
- 编程之外的修炼
- 画笔和画刷
- wifi数据传输APP操作小结
- POJ 1061 青蛙的约会
- QEMU调试Linux系统的USB协议栈
- 反射实例一
- C/C++传递方式
- Android ABI
- 一、Activiti5 配置
- APP可盈利模式分析
- Java写入文件的几种方法
- PHP将数据导出Excel表中(投机型)
- [Muduo网络库源码分析] (9) base/Thread.cc_h_CurrentThread_h线程对象
- 百度地图开发_离线