1 package com.jdk7.chapter2.adapter; 2 /** 3 * AdapterPrint適配器既繼承了PrintIntArray的打印數組的功能,又實現了排序接口的排序功能SortNumber, 4 * 把不相關的功能集合到一塊兒 5 * @author Administrator 6 * 7 */ 8 9 //須要使用不相關類的方法則繼承該類便可繼承該類的功能 10 public class AdapterPrint extends PrintIntArray implements SortNumber{ 11 //將接口做爲適配器的私有對象類型 12 private SortNumber sort; 13 //將適配器構造函數中對象類型的復件引用傳給適配器中的私有對象變量 14 public AdapterPrint(SortNumber sort1){ 15 this.sort = sort1; 16 } 17 @Override 18 public int[] sortASCNumber(int[] intArray) { 19 if(this.sort!=null){ 20 return this.sort.sortASCNumber(intArray); 21 }else{ 22 return null; 23 } 24 } 25 26 public static void main(String[] args) { 27 int[] array = new int[] {5,8,7,6,1,4,3,2};
//使用工廠模式建立排序接口對象 28 AdapterPrint adapter = new AdapterPrint(Factory.getSortNumber(Factory.BUBBLE_SORT)); 29 adapter.printIntArray(adapter.sortASCNumber(array)); 30 } 31 }