package object01;
public interface Command {//定义一个接口 让其他类去实现
	void pArray(int[] arr);  //打印数组
	int addArray(int[] arr);  //数组求和
}
public class InplementArrays implements Command {  //实现接口内的方法
	public void pArray(int[] arr) {
		for (int Arr : arr) {
			System.out.println("数组迭代输出为:" + Arr);
		}
	}
	public int addArray(int[] arr) {
		int sum = 0;
		for (int Arr : arr) {
			sum += Arr;
		}
		return sum;
	}
}
//测试
public class ProcessArray {
	public int process(int[] arr, Command cd) {
		cd.pArray(arr);
		return cd.addArray(arr);
	}
	public static void main(String[] args) {
		ProcessArray p = new ProcessArray();
		System.out.println(p.process(new int[] { 18, 2, 13, 5 },// InplementArrays qwe = new InplementArrays();
				new InplementArrays()));// 相当于qwe 这里调用了接口实现InplementArrays implements Command
		System.out.println("-------------------------------");
		System.out.println(p.process(new int[] { 88, 2, 13, 1 }, new Command() {
			@Override
			public void pArray(int[] arr) { // 接口里的方法实现
				for (int Arr : arr) {
					System.out.println("数组迭代输出为:" + Arr);
				}
			}
			@Override
			public int addArray(int[] arr) {
				int sum = 0;
				for (int Arr : arr) {
					sum += Arr;
				}
				return sum;
			}
		}));
	}
}

 
                    
                     
                    
                 
                    
                 
         
