/**
* 抽象角色
*/
public interface IHello
{
void sayHello(String name);
}
/**
* 真实角色
*/
public class Hello implements IHello
{
@Override
public void sayHello(String name)
{
System.out.println("真实角色的方法 " + name); //$NON-NLS-1$
}
}
/**
* 代理类 --- 动态代理
*/
public class ProxyHello implements InvocationHandler
{
Object obj;
/**
* 构造函数
* @param obj
*/
public ProxyHello(Object obj)
{
this.obj = obj;
}
@Override
public Object invoke(Object proxy, Method method, Object[] args)
throws Throwable
{
System.out.println("在代理方法执行之前"); //$NON-NLS-1$
method.invoke(obj, args);
System.out.println("在代理方法执行之后"); //$NON-NLS-1$
return null;
}
public static void main(String[] args)
{
Hello hello = new Hello();
ProxyHello pHello = new ProxyHello(hello);
Class hClass = hello.getClass();
IHello h = (IHello)Proxy.newProxyInstance(hClass.getClassLoader(),
hClass.getInterfaces(),
pHello);
h.sayHello("化为");
}
}
-----------------------------
/**
* 抽象角色
*/
public interface IHolle
{
public void sayHello(String name);
}
/**
* 代理类
*/
public class Hello implements IHolle
{
@Override
public void sayHello(String name)
{
System.out.println("实现类的方法 " + name); //$NON-NLS-1$
}
}
/**
* 代理类 --- 静态代理
*/
public class ProxyHello implements IHolle
{
Hello hello;
public ProxyHello(Hello hello)
{
this.hello = hello;
}
@Override
public void sayHello(String name)
{
proRequest();
hello.sayHello(name);
proResponse();
}
public void proRequest()
{
System.out.println("代理之前的处理"); //$NON-NLS-1$
}
public void proResponse()
{
System.out.println("代理之后的处理"); //$NON-NLS-1$
}
public static void main(String[] args)
{
ProxyHello ProxyHello = new ProxyHello(new Hello());
ProxyHello.sayHello("huawei"); //$NON-NLS-1$
}
}
分享到:
相关推荐
3 Java 语 言 的 动 画 效 果 远 比 GUI技 术 更 加 逼 真 ,尤 其 是 利用WW W提 供 的 巨 大动 画 资 源 空 间 ,可 以 共 享 全 世 界 的 动 态 画面 的 资 源 。 4 软 件 最 终 产 品 :用 Java 语 言 开 发 的 ...
ANDROID 的推出后可能影响的产业包括移动电信业,软件开发业,手机制造业,在以消费者为核心的状 态 。 对消费者的影响 � 高档手机选择面增加。 � A ndroid 在设计初期就考虑了与现其有业务的融合,改变以往从...
汽 车 企 业 数 字 化 转 型 的 过 程 中 , 不 仅 需 要 技 术 的 支 持 , 更 需 要 深 入 理 解 产 业 动 态 和 市 场 需 求 。 专 家 咨 询 团 队 的 规 划 咨 询 服 务 可 以 帮 助 企 业 制 定 合 理 的 数 字...
通 过校 园 网 络使 教 师和 科 研 人 员能 及 时 了 解国 内外 科 技 发 展动 态 , 加 强 对外 技 术 合 作。了 解 国内 外 教 学和 科 研 水 平 。为 开 展 网上 远 距 离 教学 和 校 内 多 媒体 交 互 式 教 学 ...
作 为 一 个 简 单 实 用 的 工 ... 并 根 据 验 证 的 结 果 动 态 调 整 影 响 地 图 和 基 于 它 的 里 程 碑 规 划, 而 这 也 正 是 当 下 流 行 的" 精 益 创 业" 的 核 心 思 想 之 一—— 经 验 证 的 学 习。
代 器迭代 器 、 适 配 器 、 消 费 者 模 块 和 包 系 统 、 P r e lu d e 模 块 m o d u le 和 包 c r a t e P r e lu d e O p t io n 、 R e s u lt 与 错 误 处 理 输 入 与 输 出 宏 系 统 堆 、 栈 与 Bo x 几...
3ds Max挣 态摸型导 由 3山 Max动 画模型导 出 3ds Max动 画导 出 Maya椟 型导 出 θ 9 l 5 5 优 化 小结 ………………………………………………………………………………………… 163 第 C= 与 Web服 努器的交互 …...
### 常见的3756个汉字分析 #### 概述 本文旨在通过分析一个包含大约3756个常见汉字的数据集,探讨这些汉字在神经网络训练中的应用价值及其对自然语言处理(NLP)技术的重要性。数据集中包含了从日常生活中广泛使用...