zoukankan      html  css  js  c++  java
  • 设计模式(二):命令模式实例

    /**
     * 设计模式(二):命令模式实例
     * 背景:在一个类中,对一个数据的处理方法不一样,可以使用这种方式
     *
     * @author 修。
     * @version 1.0.0
     */
    package day66;
    
    /**
     * 命令接口:提供统一规范
     */
    interface Commmand{
        /**
         * 处理数据
         */
        public abstract void process(int[] table);
    }
    class PrintCmd implements Commmand{
    
        @Override
        public void process(int[] table) {
            System.out.println("遍历table里的元素:");
            for (int tmp : table)
            {
                System.out.println(tmp);
            }
        }
    }
    class AddCmd implements Commmand{
    
        @Override
        public void process(int[] table) {
            int sum=0;
            for (int tmp : table)
            {
                sum += tmp;
            }
            System.out.println("计算table里元素的总和:"+sum);
        }
    }
    public class Day662 {
        public void Mainprocess(int[] table,Commmand cmd)
        {
            cmd.process(table);
        }
        public static void main(String[] args) {
            Day662 day = new Day662();
            int[] table = {1,2,3,4,5};
            day.Mainprocess(table,new PrintCmd());
            day.Mainprocess(table,new AddCmd());
        }
    }
    
    
    梦还远,路还长!
  • 相关阅读:
    正则表达式
    移动开发知识点收集
    SQL Server
    百度数据图表插件Echarts
    Xamarin
    Func与Action
    MVC Core
    利用 async & await 的异步编程
    CSS3
    [leetcode]374. Guess Number Higher or Lower
  • 原文地址:https://www.cnblogs.com/qujialin/p/10987046.html
Copyright © 2011-2022 走看看