开发者学堂课程【Java Web 开发系列课程:Spring 框架入门:09代理的讲解】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/538/detail/7341
09代理的讲解
内容简介:
一、静态代理的角色分析
二、代码实现
三、使用静态代理的好处
一、静态代理的角色分析
抽象角色: 一般使用接口或者抽象类来实现。
真实角色:被代理的角色
代理角色:代理真实角色—代理真实角色后一般会做一些附属操作。
客户:使用代理角色来进行一些操作
二、代码实现
Rent.1ava——抽象角色
public interface Rent {
public void rent();
Host.java 真实角色
public class Host implements Rent{
public void rent(){
System.out.println("房屋出租");
}
Proxy.java 代理角色
public class Proxy implements Rent{
private Host host;
public Proxy()
public Proxy(Host host)(
this.host whost;
public void sethost(Host host){
this.host -host;
//租房
public void rent(){
seeHouse():
host.rent(); fare();//看房
private void seeHouse(l
System.out.println(“带房客看房”)
//收中介费
private void fare()
System.out.println(收取中介费)
}
}
Client.java 客户
public class client{
public static void main(string[] args){
Host host = new Host();
Proxy proxy=new Proxy(host);
proxy.rent();
}
}
三、使用静态代理的好处
优点:使得真实角色处理的业务更加纯粹,不再去关注一些公共的事情。公共的业务由代理来完成,实现业务的分工,公共业务发生扩展时变得更加集中和方便。
缺点:类多了;多了代理类;工作量变大了;