软件设计模式————(代理模式)

[实验任务一]:婚介所

婚介所其实就是找对象的一个代理,请仿照我们的课堂例子“论坛权限控制代理”完成这个实际问题,其中如果年纪小于18周岁,婚介所会提示“对不起,不能早恋!”,并终止业务。

实验要求:

1. 提交类图;

 

2. 提交源代码;

复制代码
 1 package tutorial14;
 2 
 3 import java.util.Scanner;
 4 
 5 public class Client {
 6 
 7     public static void main(String[] args) {
 8         // TODO 自动生成的方法存根
 9         
10         AbstractMatchMaking amm=new MatchMakingProxy();
11         System.out.println("*******欢迎来到婚介所*******");
12         System.out.println("您可以简单浏览一下我们的嘉宾信息....");
13         amm.viewInformation();
14         System.out.println("*******请登记一下您的基本信息*******");
15         System.out.println("您的年龄:");
16         Scanner in =new Scanner(System.in);
17         int age=in.nextInt();
18         amm.improveInformation(age);
19         if(age>=18) {
20             amm.postAnnouncement();
21         }
22         
23     }
24 
25 }
复制代码

复制代码
1 package tutorial14;
2 
3 public interface AbstractMatchMaking {
4 
5     public void viewInformation();
6     public void postAnnouncement();
7     public void improveInformation(int age);
8 }
复制代码

复制代码
 1 package tutorial14;
 2 
 3 public class MatchMaking implements AbstractMatchMaking{
 4 
 5     @Override
 6     public void viewInformation() {
 7         // TODO 自动生成的方法存根
 8         System.out.println("您正在浏览查看婚介对象基本信息");
 9     }
10 
11     @Override
12     public void postAnnouncement() {
13         // TODO 自动生成的方法存根
14         System.out.println("您发布了一条征婚启事,请注意查收结果消息");
15     }
16 
17     @Override
18     public void improveInformation(int age) {
19         // TODO 自动生成的方法存根
20         
21     }
22 
23 }
复制代码

复制代码
 1 package tutorial14;
 2 
 3 public class MatchMakingProxy implements AbstractMatchMaking{
 4 
 5     private MatchMaking client=new MatchMaking();
 6     private int age=18;
 7     @Override
 8     public void viewInformation() {
 9         // TODO 自动生成的方法存根
10         System.out.println("您正在浏览查看婚介对象基本信息");
11         
12     }
13 
14     @Override
15     public void postAnnouncement() {
16         // TODO 自动生成的方法存根
17         if(age>=18) {
18             System.out.println("发布征婚启事");
19         }else if(age<18) {
20             System.out.println("对不起,不能早恋!");
21         }
22     }
23 
24     @Override
25     public void improveInformation(int age) {
26         // TODO 自动生成的方法存根
27         
28         this.age=age;
29         if(age<18) {
30             System.out.println("对不起,不能早恋!");
31         }else if(age>=18) {
32             System.out.println("信息登记完成......");
33         }
34     }
35 
36 }
复制代码

  

3. 注意编程规范。

posted @ 2024-11-21 14:38  财神给你送元宝  阅读(0)  评论(0编辑  收藏  举报