Java设计模式之模板

如果要写一个类描述日常生活中的某些行为我们可以这么写~例如:喝水

System.out.println("开始");

System.out.println("喝水");

System.out.println("结束");

然后喝完水想要睡觉:

又要添加:

System.out.println("开始");

System.out.println("睡觉");

System.out.println("结束");

最后睡不着起床:

System.out.println("开始");

System.out.println("起床");

System.out.println("结束");

好了看到这里会想,那么多活动,如果一个两个还好,如果多了呢那怎么办?是不是要写一大堆开始结束,是不是每进行一个动作都要设法调用一次开始,实例化一个对象然后再调用动作,最后再设法调用一次结束。而且在正式的开发中,可能会针对相同的行为写不同的算法或者针对类似的行为写好多方法。既然是相同的或者相似的行为,我们可以抽取一部分相同的代码封装起来作为父类,把不同的部分写在子类。

看代码:


public abstract class Do{

public void do(Object obj){
System.out.println("start");
doing(obj);
System.out.println("over");
}

public abstract  void doing(Object obj);

}

public class Kiss extends Do(){

public void doing(Object obj){
System.out.println("我在kiss:"+obj);
}

}

public class Run extends Do (){

public void doing(Object obj){
System.out.println("我在run:"+obj);
}

}


public int main(String[] args){
Kiss k=new Kiss();
k.do();
}
使用此设计模式可以大大增加了程序的可扩展性。纯属个人理解~~




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值