标签:keyword container class lsp table highlight code 代理服务器 生活
.代理设计模式
指由一个代理主题来操作真实主题,真实主题执行具体的业务操作,而代理主题负责其他相关业务的处理。比如生活中的通过代理访问网络,客户通过网络代理连接网络(具体业务),由代理服务器完成用户权限和访问限制等与上网相关的其他操作(相关业务)。
示例代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
interface Network { // 定义Network接口 public void browse(); // 定义浏览的抽象方法 } class Real implements Network { // 真实的上网操作 public void browse() { // 覆写抽象方法 System.out.println( "上网浏览信息!" ); } } class Proxy implements Network { // 代理上网 private Network network; public Proxy(Network network) { // 设置代理的真实操作 this .network = network; // 设置代理的子类 } public void check() { // 身份验证操作 System.out.println( "检查用户是否合法!" ); } public void browse() { this .check(); // 调用具体的代理业务操作 this .network.browse(); // 调用真实的上网操作 } } public class ProxyDemo { public static void main(String args[]) { Network net = null ; // 定义接口对象 net = new Proxy( new Real()); // 实例化代理,同时传入代理的真实操作 net.browse(); // 调用代理的上网操作 } } |
标签:keyword container class lsp table highlight code 代理服务器 生活
原文地址:https://www.cnblogs.com/jiang--nan/p/8949811.html