天天看點

擴充卡模式

類的擴充卡模式

class CIntegerSortAdapter:DoubleSort,Sortable

    {

        public int[] Sort(int[] number)

        {

            double[] dnum = new double[number.Length];

            int[] inum = new int[number.Length];

            for (int i = 0; i < number.Length; i++)

            {

                dnum[i] = number[i] * 1.0;

            }

            dnum = this.Sort(dnum);

            for (int i = 0; i < dnum.Length; i++)

                inum[i] = (int)dnum[i];

            return inum;

        }

    }

對象的擴充卡模式

class OIntegerSortAdapter:Sortable

        private DoubleSort doubleSort = new DoubleSort();

            dnum = doubleSort.Sort(dnum);

擴充卡模式将一個類的接口轉換成客戶希望的另外一個接口。Adapter模式使得原本由于接口不相容而不能一起工作的那些類可以在一起工作。擴充卡模式複用了已有的類,展現了代碼的重用性。将目标類和适配者類解耦,通過引入一個擴充卡類重用現有的适配者類,而無需修改原有代碼。