`
lgywindows
  • 浏览: 9347 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

反射的基础(二):构造器类的使用

    博客分类:
  • java
阅读更多
上一章节 http://lgywindows.iteye.com/blog/1797232
反射的本质:将类的各种属性(类的变量,类的方法,类所在的包名,类的构造器等)映射成相应的java类。用"一群类"去描述和操纵一个类。
类的反射之构造器类
一 通过构造器类(Constructor)获得指定类的构造器:
1 java.lang.reflect.Constructor[] cons = String.class.getConstructors();此句将返回所有的构造器方法
2 java.lang.reflect.Constructor con = String.class.getConstructor(new StringBuffer().getClass());此句将返回指定的构造器方法
二 当使用构造器类(Constructor)获得指定类的构造方法后就可以进行实例化操作,语法:
1 Class cls = Class.forName("java.lang.String");cls.newInstance();这实际上是一种捷径式写法
2 java.lang.reflect.Constructor con = String.class.getConstructor(new StringBuffer().getClass());
  String str = (String)con.newInstance(new StringBuffer("abcdefg"));这才是正常的调用程序
意义:可以在程序运行后动态的加载java类,再动态的得到类的构造器并进行初始化。
示范代码如下:
public class MyConstructor {
	public static void main(String[] args) throws Exception{
		java.lang.reflect.Constructor con = String.class.getConstructor(new StringBuffer().getClass());
		String str = (String)con.newInstance(new StringBuffer("abcdefg"));
		System.out.println(str.charAt(2));
	}
}

下一章节http://lgywindows.iteye.com/blog/1797326
分享到:
评论

相关推荐

    653.651.JAVA基础教程_反射-获取运行时类的构造器结构(653).rar

    653.651.JAVA基础教程_反射-获取运行时类的构造器结构(653).rar

    658.656.JAVA基础教程_反射-调用运行时类中的指定构造器(658).rar

    658.656.JAVA基础教程_反射-调用运行时类中的指定构造器(658).rar

    《剑指offer》Java基础-反射篇.pdf

    获取类的构造器(Constructor) 获取注解 通过反射调用方法 反射的应用场景 Spring 的 IOC 容器 反射 + 抽象工厂模式 JDBC 加载数据库驱动类 反射的优势及缺陷 增加程序的灵活性 破坏类的封装性 性能损耗 反射基础篇...

    Java基础 反射篇.md

    - 获取类的构造器(Constructor) - 获取注解 - 通过反射调用方法 - 反射的应用场景 - Spring 的 IOC 容器 - 反射 + 抽象工厂模式 - JDBC 加载数据库驱动类 - 反射的优势及缺陷 - 增加程序的灵活性 - 破坏...

    xml与反射.txt

    第一:获取类加载器:ClassLoader loader=Thread.currentThread().getContextClassLoader();//获取当 前线程的上下文类加载器 第二:通过类加载器获取类 Class clazz=loader.loadClass("com.taobao.reflect.car")//...

    Java 基础核心总结 +经典算法大全.rar

    类的初始化 成员初始化 构造器初始化初始化顺序 数组初始化 对象的销毁 对象作用域 this 和 super 访问控制权限继承 多态组合代理 向上转型static final 接口和抽象类接口 抽象类异常 认 识 Exception 什么是 ...

    Java反射示例代码.rar

    Java反射的demo案例,适合初学者理解,包含基础的各种反射(构造器、属性、方法等),本资源仅用于学习交流。

    Java反射机制重点总结

    文章目录Java ReflectionJava反射机制提供的功能Java反射相关的主要API...反射调用类的完整结构获取实现的全部接口获取所继承的父类获取全部的构造器获取全部的方法获取全部的属性获取Annotation相关获取泛型相关获取...

    java基础核心总结归纳---参考手册--心得手册-学习资料-总结经验

    构造器初始化 15 初始化顺序 16 this 和 super 16 访问控制权限 16 继承 17 多态 17 代理 17 Static 17 Final 17 接⼝和抽象类 18 接⼝ 18 抽象类 18 异常 18 认识 Exception 18 什么是 Throwable 18 常⻅的 ...

    Java开发技术大全(500个源代码).

    listConstructors.java 利用反射机制获取构造器列表 listFields.java 利用反射机制获取成员属性列表 listMethods.java 利用反射机制获取成员方法列表 loadClass.java 动态装载一个类 Shape.java 一个用于测试的...

    21天学通Java-由浅入深

    191 10.1 什么是构造器 191 10.1.1 构造器的使用 191 10.1.2 被修饰的构造器 193 10.1.3 构造器方法与普通方法的区别 196 10.2 如何实例化一个对象 197 10.3 构造器的使用 199 10.3.1 构造器的调用 199 10.3.2 构造...

    疯狂JAVA讲义

    9.6.5 使用类文件代替资源文件 350 9.6.6 使用NumberFormat格式化数字 350 9.6.7 使用DateFormat格式化日期 352 9.7 本章小结 355 本章练习 355 第10章 异常处理 356 10.1 异常概述 357 10.2 异常处理机制 ...

    CLR.via.C#.(中文第3版)(自制详细书签)Part2

    8.1 实例构造器和类(引用类型) 8.2 实例构造器和结构(值类型) 8.3 类型构造器 8.3.1 类型构造器的性能 8.4 操作符重载方法 8.4.1 操作符和编程语言互操作性 8.5 转换操作符方法 8.6 扩展方法 8.6.1 规则和...

    Java开发详解.zip

    031502_【第15章:Java反射机制】_Class类的使用笔记.pdf 031503_【第15章:Java反射机制】_反射应用——取得类的结构笔记.pdf 031504_【第15章:Java反射机制】_Java反射机制的深入研究笔记.pdf 031505_【第15章:...

    Java2核心技术.part5

    4.3.4从构造器开始 5.2.2相等测试与继承 5.2.3 hashCode方法 5.2.4 toString方法 5.3泛型数组列表 5.3.1访问数组列表元素 5.3.2类型化与原始数组列表的兼容性 5.4对象包装器与自动打包 5.5...

    C#本质论(第3版)

    5.7.5 使用this调用另一个构造器 5.8 静态成员 5.8.1 静态字段 5.8.2 静态方法 5.8.3 静态构造器 5.8.4 静态属性 5.8.5 静态类 5.9 扩展方法 5.10 封装数据 5.10.1 const 5.10.2 readonly 5.11 嵌套类 ...

    C#5.0本质论第四版(因文件较大传的是百度网盘地址)

    5.7.5 构造器链:使用this调用另一个构造器 168 5.8 静态成员 172 5.8.1 静态字段 172 5.8.2 静态方法 174 5.8.3 静态构造器 175 5.8.4 静态属性 176 5.8.5 静态类 177 5.9 扩展方法 ...

    CLR.via.C#.(中文第3版)(自制详细书签)Part1

    8.1 实例构造器和类(引用类型) 8.2 实例构造器和结构(值类型) 8.3 类型构造器 8.3.1 类型构造器的性能 8.4 操作符重载方法 8.4.1 操作符和编程语言互操作性 8.5 转换操作符方法 8.6 扩展方法 8.6.1 规则和...

    CLR.via.C#.(中文第3版)(自制详细书签)

    8.1 实例构造器和类(引用类型) 8.2 实例构造器和结构(值类型) 8.3 类型构造器 8.3.1 类型构造器的性能 8.4 操作符重载方法 8.4.1 操作符和编程语言互操作性 8.5 转换操作符方法 8.6 扩展方法 8.6.1 规则和...

Global site tag (gtag.js) - Google Analytics