zoukankan      html  css  js  c++  java
  • 动态代理机制+反射

    动态代理机制+反射

    一个接口,一个类,是实现动态代理的核心!!!

    InvocationHandler接口

    通过创建InvocationHandler接口创建自己的调用处理器。
    invoke方法(可以调用被代理对象方法,也可以调用代理方法)
    Proxy 类 (newProxyInstance方法就是创建一个代理类对象)
    loader:类加载器 interfaces:接口 h:调用对象

    注解:

    注解的定义:public @interface 注解名

    元注解(定义注解的注解):

    1.@Documented: 表示注解是否添加在文档中     2.Retention:生命周期(哪个阶段生效)

    3.Target :指定注解的只用范围   4.Inherited:是否允许子类继承该注解

    面试题:new和newInstance的区别

    newInstance()是实现IOC、反射、面对接口编程 和 依赖倒置 等技术方法的必然选择,new 只能实现具体类的实例化,不适合于接口编程。

    从jvm的角度看,我们使用new的时候,这个要new的类可以没有加载;

    但是使用newInstance时候,就必须保证:1、这个类已经加载;2、这个类已经连接了。

       newInstance: 弱类型。低效率。只能调用无参构造。 
        new: 强类型。相对高效。能调用任何public构造。

     

  • 相关阅读:
    Bzoj4627 [BeiJing2016]回转寿司
    Bzoj1901 Zju2112 Dynamic Rankings
    COGS728. [网络流24题] 最小路径覆盖问题
    Bzoj4568 [Scoi2016]幸运数字
    Bzoj2728 [HNOI2012]与非
    HDU4609 3-idiots
    Bzoj2194 快速傅立叶之二
    Bzoj2179 FFT快速傅立叶
    模拟52 题解
    模拟51 题解
  • 原文地址:https://www.cnblogs.com/yhgn/p/10731723.html
Copyright © 2011-2022 走看看