软件设计十四
实验14:代理模式
本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:
1、理解代理模式的动机,掌握该模式的结构;
2、能够利用代理模式解决实际问题。
|
|
|
|
[实验任务一]:婚介所
婚介所其实就是找对象的一个代理,请仿照我们的课堂例子“论坛权限控制代理”完成这个实际问题,其中如果年纪小于18周岁,婚介所会提示“对不起,不能早恋!”,并终止业务。
实验要求:
1. 提交类图;
2. 提交源代码;
//People.java
public interface People {
public void setAge(int Age);
public void lovers();
}
//Proxy.java
public class Proxy implements People{
private Real real=new Real();
public void setReal(Real a){
real=a;
}
public void setAge(int Age){
}
public void lovers(){
if(real.getAge()<18){
System.out.println("对不起,您还未满18岁,不能早恋!");
}
else{
real.lovers();
}
}
}
//Real.java
public class Real implements People{
private int age=0;
public void setAge(int Age){
age=Age;
}
public int getAge(){
return age;
}
public void lovers(){
System.out.println("已为您匹配到最佳伴侣");
}
}
//Client.java
public class Client {
public static void main(String[] args) {
Proxy proxy=new Proxy();
Real real=new Real();
real.setAge(16);
System.out.println("何磊16岁");
proxy.setReal(real);
proxy.lovers();
real.setAge(20);
System.out.println("连赛轩20岁");
proxy.setReal(real);
proxy.lovers();
}
}
3. 运行结果
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· winform 绘制太阳,地球,月球 运作规律
· 上周热点回顾(3.3-3.9)