• 接口(命令模式):


    //-定义接口
    interface Command{
    	void process(int[] array);
    }
    
    //-实现类:1 
    class PrintCommand implements Command{
    	public void process(int[] array){
    		for(int arr:array){
    			System.out.println("数组的元素分别为:"+arr);
    		}
    	}
    }
    
    //-实现类:2
    class AddCommand implements Command{
    	public void process(int[] array){
    		int sum=0;
    		for(int arr:array){
    			sum+=arr;
    		}
    		System.out.println("数组的总和为"+sum);
    	}
    }
    
    //-定义与实现类分离的类,通过多态的方式,调用实现类的方法
    class ProcessComm{
    	public void process(int[] array,Command com){
    		com.process(array);
    	}
    }
    
    //-调用与实现类分离的类,通过多态方式,获取接口类型的 不同实现类实例
    //-以后若要对实现类更换或修改,直接重新定义一个实现类,并在该类指向该实现类即可,不需要动过去的实现类
    //-通过接口,彻底实现规范与实现类的分离
    public class CommandTest{
    	public static void main(String[] args){
    		int[] array={3,4,6,10};
    		ProcessComm pro=new ProcessComm();
    		pro.process(array,new PrintCommand());
    		pro.process(array,new AddCommand());
    	}
    }
    
  • 相关阅读:
    Netty
    HttpClient 该知道一些概念
    Hibernate QBC 简单收集
    IUAP--单点登录
    js图片压缩和上传并显示
    vue移动端项目
    js自定义滚动条
    mysql5.7以上版本安装
    学习webpack
    学习es6
  • 原文地址:https://www.cnblogs.com/baby-zhude/p/8278931.html
Copyright © 2020-2023  润新知