java 静态代理模拟实现 模拟软件开发过程

静态代理模拟实现 模拟软件开发过程

/**
 * 软件开发
 */
public interface SoftwareDesigning {
    /**
     * 设计
     */
    public void designing();
    /**
     * 开发
     */
    public void developing();
    /**
     * 测试
     */
    public void testing();
}

/**
 * 开发人员
 */
class Developer implements SoftwareDesigning{
    /**
     * 设计
     */
    @Override
    public void designing() {

    }

    /**
     * 开发
     */
    @Override
    public void developing() {
        System.out.println("开发开始");
        System.out.println("开发结束");
    }

    /**
     * 测试
     */
    @Override
    public void testing() {

    }

}

/**
 * 设计人员
 */
class Designer implements SoftwareDesigning{

    /**
     * 设计
     */
    @Override
    public void designing() {
        System.out.println("设计开始");
        System.out.println("设计结束");
    }

    /**
     * 开发
     */
    @Override
    public void developing() {

    }

    /**
     * 测试
     */
    @Override
    public void testing() {

    }
}
class Tester implements SoftwareDesigning{

    /**
     * 设计
     */
    @Override
    public void designing() {

    }

    /**
     * 开发
     */
    @Override
    public void developing() {

    }

    /**
     * 测试
     */
    @Override
    public void testing() {
        System.out.println("测试开始");
        System.out.println("测试结束");
    }
}

/**
 * 软件公司
 */
class SaftwareHouse implements SoftwareDesigning
{
    /**
     * 设计人员
     */
    private Designer designer;
    /**
     * 开发人员
     */
    private Developer developer;
    /**
     * 测试人员
     */
    private Tester tester;

    public SaftwareHouse(Designer designer, Developer developer, Tester tester) {
        this.designer = designer;
        this.developer = developer;
        this.tester = tester;
    }

    public SaftwareHouse() {
    }

    @Override
    public void designing() {
        designer.designing();
    }

    @Override
    public void developing() {
        developer.developing();
    }

    @Override
    public void testing() {
        tester.testing();
    }

    /**
     * 静态代理模拟
     * @param args
     */
    public static void main(String[] args) {
        //创建一个软件公司
        SaftwareHouse softwareDesigning = new SaftwareHouse(new Designer(),new Developer(),new Tester());
        //调用设计方法
        softwareDesigning.designing();
        //调用开发方法
        softwareDesigning.developing();
        //调用测试方法
        softwareDesigning.testing();
    }
}

运行结果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一个正在成长的程序员

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值