首页 > 代码库 > java模式之模板模式——抽象类
java模式之模板模式——抽象类
模板设计模式(Template )
abstract class Action{ // 定义一个行为类 public static final String WORK = "work"; public static final String SLEEP = "sleep"; public static final String EAT = "eat"; public abstract void eat(); public abstract void sleep(); public abstract void work(); public void command(String str){ switch(str){ case "work": this.work(); break; case "sleep": this.sleep(); break; case "eat": this.eat(); break; } } } class People extends Action{ public void sleep(){ System.out.println("人正在睡觉"); } public void eat(){ System.out.println("人正在吃饭"); } public void work(){ System.out.println("人正在工作"); } } class Pig extends Action{ public void sleep(){ System.out.println("猪正在睡觉"); } public void eat(){ System.out.println("猪正在吃饭"); } public void work(){ } } class Robot extends Action{ public void sleep(){ } public void eat(){ System.out.println("机器人正在补充能量"); } public void work(){ System.out.println("机器人正在工作"); } } public class Test{ public static void main(String args[]){ fun(new People()); fun(new Robot()); } public static void fun(Action act){ act.command(act.WORK); act.command(act.SLEEP); act.command(act.EAT); } }
java模式之模板模式——抽象类
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。