package designpattern; public class TemplateMethodTest { public static void main(String[] args) { Life mylife = new MyLife(); mylife.live(); } } abstract class Life { public void save(){ // byte[] data = getData(); // encrypt(data); // fileSave(data); } public void live(){ born(); study(); work(); die(); } abstract void born(); abstract void study(); abstract void work(); abstract void die(); } class MyLife extends Life { @Override void born() { System.out.println("xxで生まれる"); } @Override void study() { System.out.println("xxで勉強する"); } @Override void work() { System.out.println("xxで働く"); } @Override void die() { System.out.println("xx歳でなくなる"); } }