实验14:代理模式
本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:
1、理解代理模式的动机,掌握该模式的结构;
2、能够利用代理模式解决实际问题。
[实验任务一]:婚介所
婚介所其实就是找对象的一个代理,请仿照我们的课堂例子“论坛权限控制代理”完成这个实际问题,其中如果年纪小于18周岁,婚介所会提示“对不起,不能早恋!”,并终止业务。
实验要求:
1. 提交类图;
2. 提交源代码;
3. 注意编程规范。
1.
2.// Person 类定义
public class Person {
private int age;
private String name;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public int getAge() {
return age;
}
public String getName() {
return name;
}
}
// MarriageAgency 类定义
public class MarriageAgency {
private Person person;
public MarriageAgency(Person person) {
this.person = person;
}
public void register() {
if (person.getAge() < 18) {
System.out.println("对不起,不能早恋!");
} else {
System.out.println("欢迎 " + person.getName() + " 来到婚介所,我们将为您寻找合适的对象。");
}
}
public static void main(String[] args) {
// 测试代码
Person person1 = new Person("张三", 17);
Person person2 = new Person("李四", 25);
MarriageAgency agency1 = new MarriageAgency(person1);
agency1.register();
MarriageAgency agency2 = new MarriageAgency(person2);
agency2.register();
}
}