Android设计模式之模板(抽象类abstract)

转载自: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;
    }

}

你可能感兴趣的:(android工具)