策略模式:基于不同的策略,有不同的实现。
在JDK中Comparator就是一个策略模式
Comparator 和 Comparable的区别在于: Comparable 只有有一个实现,但是Comparator 可以有不同的策略器。
策略模式包含三个部分
1.interface (Compartator)
2. 操作类 (SortUtil)
3. 不同的策略类(DogCompartor, CatCompartator)
public Interface Compartator<T>{
boolean compartorTo<T t1,T t2>
}
public Class SortUtil<T>{
T[] sort(T[] , Compartator compartator){
}
}
public Class DogCompartor{
}
public Class CatCompartor{
}