Java设计模式之模板模式

本文介绍了模板模式的概念及其在软件开发中的应用。通过一个游戏示例详细解释了如何使用模板模式来封装不变的部分,并允许子类扩展可变的部分。此外,还讨论了这种模式在企业级开发中的常见应用场景。

定义:一个抽象类公开定义了执行它的方法的方式/模板。它的子类可以按需要重写方法实现,但调用将以抽象类中定义的方式进行

特点:

     1、封装不变部分,扩展可变部分。

    2、提取公共代码,便于维护。

    3、行为由父类控制,子类实现。

企业级开发和常用框架中的应用:spring中对hibernate的实现(开启事务,打开会话,关闭session)

实例:下面以玩游戏举例,所有游戏玩的时候都有两个操作,打开游戏和关闭游戏,但中间玩的方式就不一样了,下面看实际例子。

public class Demo {
	public static void main(String[] args) {
		Game g1 = new LOL();
		Game g2 = new CF();
		g1.playGame();
		g2.playGame();
	}
}

abstract class Game{
	protected void init(){
		System.out.println("初始化游戏并登陆游戏。。。");
	}
	public abstract void play();
	protected void end(){
		System.out.println("结束游戏并退出登录。。。");
	}
	public void playGame(){
		init();
		play();
		end();
	}
}

class LOL extends Game{
	public void play() {
		System.out.println("玩英雄联盟游戏");
	}
}

class CF extends Game{
	public void play() {
		System.out.println("玩创越火线游戏");
	}
}

模板模式其实就是抽象类的应用,这个模式比较简单,而且在实际开发中也用的比较多。

转载于:https://my.oschina.net/jiaoy/blog/751878

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值