zoukankan      html  css  js  c++  java
  • 鸟与飞机

    template_method

    public abstract class Flyable {
        //抽象方法
        public abstract void takeoff();
        //钩子Hooks(让继承类来重写)
        public void fly(){
    
        }
        //实际方法
        private void land(){
            System.out.println("着陆");
        }
        //模板方法
        public void act(){
            takeoff();
            fly();
            land();
        }
    }
    

    Flyable

    public abstract class Flyable {
        //抽象方法
        public abstract void takeoff();
        //钩子Hooks(让继承类来重写)
        public void fly(){
    
        }
        //实际方法
        private void land(){
            System.out.println("着陆");
        }
        //模板方法
        public void act(){
            takeoff();
            fly();
            land();
        }
    }
    

    Airplane

    public class Airplane extends Flyable{
        @Override
        public void takeoff() {
            System.out.println("踩油门,在跑道上滑行起飞");
        }
    
        @Override
        public void fly() {
            System.out.println("滑翔");
        }
    }
    

    Bird

    public class Bird extends Flyable{
        @Override
        public void takeoff() {
            System.out.println("弹跳起飞");
        }
    
        @Override
        public void fly() {
            System.out.println("拍动翅膀");
        }
    }
    

    Main

    public class Main {
        public static void main(String[] args) {
            Flyable airplane = new Airplane();
            Flyable bird = new Bird();
            airplane.act();
            bird.act();
        }
    }
    

    本文来自博客园,作者:CLAY——MRX,转载请注明原文链接:https://www.cnblogs.com/do-it-520/p/template_method.html

    韶华易逝,不能虚度年华。
  • 相关阅读:
    PAT 1025. 反转链表 (25)
    PAT 1024. 科学计数法 (20)
    PAT 1076. Forwards on Weibo (30)
    C++——cout输出小数点后指定位数
    PTA 06-图3 六度空间 (30分)
    PTA 06-图2 Saving James Bond
    PTA
    浙大PTA
    浙大PTA
    随机密码生成
  • 原文地址:https://www.cnblogs.com/do-it-520/p/template_method.html
Copyright © 2011-2022 走看看