qwb0614

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
  187 随笔 :: 0 文章 :: 0 评论 :: 2048 阅读

实验14:代理模式

本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:

1、理解代理模式的动机,掌握该模式的结构;

2、能够利用代理模式解决实际问题。

 
   

 


[实验任务一]:婚介所

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

实验要求:

1. 提交类图;

 

2. 提交源代码;

3. 注意编程规范。

复制代码
package ruanjiansheji.shiyan14;

public interface  AbstractMarriage {
    public void ViewInformation();
    public void PublishMarriage();
    public void setAge(int age);
}
package ruanjiansheji.shiyan14;

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
            // TODO 自动生成的方法存
             MarriageProxy marriageProxy=new MarriageProxy();
             marriageProxy.ViewInformation();
             System.out.println("您的年龄:");
             Scanner in =new Scanner(System.in);
             int age=in.nextInt();
             marriageProxy.setAge(age);
             marriageProxy.PublishMarriage();
    }
}
package ruanjiansheji.shiyan14;

public class Marriage implements AbstractMarriage{
    @Override
    public void ViewInformation() {
        System.out.println("浏览婚姻介绍所");
    }

    @Override
    public void PublishMarriage() {
        System.out.println("发布信息");
    }

    @Override
    public void setAge(int age) {

    }
}
package ruanjiansheji.shiyan14;

public class MarriageProxy implements AbstractMarriage{
    private Marriage marriage = new Marriage();
    private  int age;

    @Override
    public void ViewInformation() {
        System.out.println("浏览婚姻介绍所");
    }

    @Override
    public void PublishMarriage() {
        if(age>=18){
            System.out.println("发布婚姻介绍");
        }else{
            System.out.println("请先满足18岁才能发布婚姻介绍");
        }
    }

    @Override
    public void setAge(int age) {
        this.age = age;
    }
}
复制代码

 

posted on   嘎嘎鸭1  阅读(8)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示