当前位置:首页 > CN2资讯 > 正文内容

代理接口代理接口异常

14小时前CN2资讯
18.1新建一个Demo2的接口;
package com.eduask.entity4;
//定义Demo2的接口;
public interface Demo2 {
void id();
void name();
void pwd();
}
18.2新建一个Demo2Impl类实现Demo2的接口;
package com.eduask.entity4;
//定义一个Demo2Impl的实现Demo2接口;
public class Demo2Impl implements Demo2 {
@Override
public void id() {
System.out.println("Demo2 id");
}
@Override
public void name() {
System.out.println("Demo2 name");
}
@Override
public void pwd() {
System.out.println("Demo2 pwd");
}
}
18.3 新建一个代理LogDynamicProxy类;
package com.eduask.entity4;
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
import java.lang.reflect.Proxy;
public class LogDynamicProxy implements InvocationHandler {
private Object targer;//定义一个代理对象;
//设置代理方法,并设置对象值;
public static Object getDynamicProxy(Object obj){
LogDynamicProxy proxy=new LogDynamicProxy();
proxy.targer=obj;
//返回新生成实例化; 参数1 对象加载 参数2 对象接口 参数3 对象;
return Proxy.newProxyInstance(obj.getClass().getClassLoader(),obj.getClass().getInterfaces(), proxy);
}
//重写invoke方法;
@Override
public Object invoke(Object proxy, Method method, Object[] args)
throws Throwable {
//输出获得方法的名字;
System.out.println("你执行了"+method.getName()+"的方法");
//获得方法的执行;
Object obj=method.invoke(targer, args);
return obj;
}
}
18.4 新建一个TestDemo2
package com.eduask.entity4;
//使用动态代理测试;
public class TestDemo2 {
public static void main(String[] args) {
Demo2 d2=new Demo2Impl();
Demo2 proxy=(Demo2) LogDynamicProxy.getDynamicProxy(d2);
proxy.id();
proxy.name();
proxy.pwd();
}
}
18.5 程序运行如下:
你执行了id的方法
Demo2 id
你执行了name的方法
Demo2 name
你执行了pwd的方法
Demo2 pwd
    你可能想看:

    扫描二维码推送至手机访问。

    版权声明:本文由皇冠云发布,如需转载请注明出处。

    本文链接:https://www.idchg.com/info/24131.html

    标签: 代理接口
    分享给朋友:

    “代理接口代理接口异常” 的相关文章

    搬瓦工CN2机房区别:选择更高品质的云服务体验

    在当今数字化时代,选择一家优质的云服务提供商和适合的机房对于网站运行和用户体验至关重要。搬瓦工作为一家备受信赖的VPS提供商,其CN2机房因其卓越的网络性能和稳定性而备受关注。本文将详细为您解析搬瓦工CN2机房与其他机房的区别,助您做出明智的选择。一、网络质量:CN2机房的优势所在CN2是中国电信旗...

    搬瓦工补货通知及高性价比套餐推荐

    搬瓦工的补货通知对许多用户来说非常重要,尤其是在需求不断增加的背景下。补货通知不仅帮助用户了解最新的套餐信息,还能在价格优惠时把握购买机会。对于我而言,时常关注这些通知意味着能以最低的价格获得高配置的套餐,这无疑是提升我网络体验的重要一步。 为了随时获取补货信息,搬瓦工提供了多种渠道供用户选择。大家...

    深入了解M247 VPS:价格、性能与适用场景全分析

    M247 VPS概述 在如今数字化时代,云计算的需求不断上升,各种VPS(虚拟专用服务器)服务也层出不穷。今天我想和大家分享的是M247 VPS,它是一家相对年轻但却在行业内逐渐崭露头角的服务商。M247成立于2012年,隶属于M24Seven Group旗下,提供多种服务,包括VPS、虚拟主机、服...

    详细指南:如何进行Linux扩容以解决存储不足问题

    什么是Linux扩容? 在使用Linux操作系统时,随着数据的增加,我们常常面临磁盘空间不足的问题。Linux扩容就是通过添加新的磁盘、扩展现有磁盘容量或利用逻辑卷管理(LVM)等方式,来增加系统的存储空间。扩容可以帮助我更好地管理数据,提高服务器的运行效率。 我记得第一次接触扩容时,面对不断增加的...

    使用宝塔面板配置与优化IPv6技术的全面指南

    宝塔面板简介 宝塔面板是一款非常实用的服务器管理工具,它的功能覆盖了许多方面。从LAMP、LNMP环境的快速搭建到监控、FTP、数据库及JAVA的管理,宝塔面板都能提供一键式的解决方案。通过这样一款工具,服务器的管理不再复杂,用户只需通过友好的Web界面进行操作,即可轻松实现各种任务。 我常常使用宝...

    AMD EPYC 7K62:数据中心理想选择的高性能服务器CPU

    在数据中心的世界中,选对一款合适的服务器CPU至关重要。今天,我想聊聊AMD EPYC 7K62,这款处理器以其高性价比赢得了许多用户的青睐。这个型号的CPU被设计为服务器专用,接下来我们将深入了解它的基本信息、技术规格以及市场定位。 AMD EPYC 7K62的型号很直接,名称中就带有AMD和EP...