抽象类中调用自己的抽象方法

抽象类中调用自己的抽象方法

先看代码

public abstract class CompositionTemplate {
    public final String template(String title,String content, String name) {
        String str = "这是标题\n" + title + content(content) + "\n这是署名:" + name;
        return str;
    }

    public abstract String content(String content);
}
public class HighSchool extends CompositionTemplate{

    @Override
    public String content(String content) {
        return content;
    }
}
public class University extends CompositionTemplate{

    @Override
    public String content(String content) {
        return content;
    }
}

main方法

@SpringBootApplication
public class StudyTestApplication {

    public static void main(String[] args) {
        SpringApplication.run(StudyTestApplication.class, args);
        HighSchool highSchool = new HighSchool();
        System.out.println(highSchool.template("高中英语作文","高中英语作文内容","张三"));
        System.out.println();
        University university = new University();
        System.out.println(university.template("大学英语作文","大学英语作文内容", "李四"));
    }
}

输出

这是标题
高中英语作文高中英语作文内容
这是署名:张三

这是标题
大学英语作文大学英语作文内容
这是署名:李四

这里的CompositionTemplate 抽象类就好像是一个模板,里面的抽象方法就像是固定的格式,,每一个继承它的类都要实现这些抽象方法,因为CompositionTemplate 的抽象方法只是一个接口,具体的实现需要子类来实现,子类可以自定义特定的内容,但又要符合模板的格式要求。


版权声明:本文为weixin_43935051原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。