网站建设都需要买什么东西,应该符合建设网站,网架加工安装,做钢材销售客户哪里去开发网站一、什么是反射#xff1f; 换句话说就是#xff08;从类里拿出来#xff09; 可以获取到#xff1a;#xff08;利用反射#xff0c;我们可以获取到类中所有的东西#xff09; 获取是先从class字节码文件中获取的 二、获取class对象的三种方式 三种方式也对应了三种阶段… 一、什么是反射 换句话说就是从类里拿出来 可以获取到利用反射我们可以获取到类中所有的东西 获取是先从class字节码文件中获取的 二、获取class对象的三种方式 三种方式也对应了三种阶段 1、Class.forName(全类名) 全类名 包名类名 2、类名.class 3、对象.getClass() 4、代码实现 三种方式获取到的字节码文件对象其实是一样的 三、反射获取 1、利用反射获取构造方法 ①、示例代码 ②、获取所有的构造方法 ③、获取单个构造方法 ④、获取方法权限修饰符 ⑤、获取参数个数、获取参数类型、获取所有参数 ⑥、获取私有暴力反射 2、利用发射获取成员变量 ①、获取class字节码文件的对象 ②、获取所有公共成员变量 ③、获取所有成员变量 ④、获取单个的成员变量 ⑤、获取权限修饰符 ⑥、获取成员变量的名字 ⑦、获取成员变量的数据类型 ⑧、获取成员变量记录的值 ⑨、修改对象里面记录的值 3、利用反射获取成员方法 ①、获取class字节码文件对象 ②、获取里面所有的公共方法对象 包含父类中所有的公共方法 ③、获取里面所有的方法对象 ④、获取单个的方法 ⑤、获取方法的修饰符 ⑥、获取方法的名字 ⑦、获取方法的形参 ⑧、获取方法的抛出的异常 ⑨、方法运行 四、反射的作用 1、练习1保存信息 示例代码 完整代码创建IO流存入本地文件 2、练习2跟配置文件结合动态创建 示例代码 配置文件 prop.properties 反射和配置文件结合动态创建对象 3、小结 getClass()是定义在Object类中的因此所有的对象都可以调用它 五、动态代理 1、什么是动态代理 动态代理可以无侵入式的给代码增加额外的功能 2、程序为什么需要代理代理长什么样 ①、示例代码 BigStar.javaJavaBean Star.java接口 3、小结 4、如何为Java对象创建一个代理对象 ①、newProxyInstance(1,2,3) ②、示例代码创建一个代理 ProxyUtil.java 参数一固定格式 参数二指定数组如果有多个接口可以将多个接口都放入数组 参数三匿名内部类 测试类 JavaBeanBigStar ③、小结