qq_42417143
qq_42417143
采纳率66.7%
2019-05-25 22:53

大佬们,java的静态代理的代理类不实现接口也能实现代理功能吧?初学者求解,谢谢啦

/**
* 代理对象,静态代理
*/
public class UserDaoProxy implements IUserDao{
//接收保存目标对象
private IUserDao target;
public UserDaoProxy(IUserDao target){
this.target=target;
}
//这里已经将被代理局部对象变为成员对象了,实现接口的作用在哪里呀??
public void save() {
System.out.println("开始事务...");
target.save();//执行目标对象的方法
System.out.println("提交事务...");
}
}

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

1条回答

  • wojiushiwo945you 毕小宝 2年前

    实现接口的作用在于你向代理类注入的 Target的具体实现类型。
    这是一种面向抽象的编程思路,只有客户端调用的时候才会传入真实的实例。UserDaoProxy 构造时的 IUserDao 的具体实例。

    点赞 1 评论 复制链接分享

为你推荐