转载自:http://blog.csdn.net/sinyu890807/article/details/8744002
1、定义抽象模板
知识点补充:接口和抽象类区别
(1)接口是公开的,里面不能有私有的方法或变量,是用于让别人使用的; 抽象类是可以有私有方法或私有变量的
(2)实现接口的一定要实现接口里定义的所有方法;
实现抽象类可以有选择地重写需要用到的方法
(3)一个类可以实现多个接口;
一个类只能继承一个超类(abstract)
public abstract class Formater {
public abstract String formating(User user);//继承该类必须实现类中的抽象方法
public String FormaterUser(User user){
String result="";
beforeFormater();
result=formating(user);
afterFormater();
return result;
}
private void beforeFormater() {
LogUtil.getInstance().debug("formater start");
}
private void afterFormater() {
LogUtil.getInstance().debug("formater end");
}
}
2、继承抽象类,自定义实现类中的抽象方法
public class JsonFormater extends Formater {
@Override
public String formating(User user) {
String result="";
result+="{\n";
result+="\"name\":\""+user.getName()+"\",\n";
result+=" \"age\":\" "+user.getAge()+"\",\n";
result+="\"job\":\" "+user.getJob()+"\",\n";
result+="}";
return result;
}
}