Определение: поведение класса или его алгоритма может быть изменено во время выполнения. В режиме политики мы создаем объект, представляющий различные политики, и объект контекста, поведение которого изменяется по мере изменения объекта политики. Объект политики изменяет алгоритм выполнения контекстного объекта.
Функции:
1. Алгоритм можно свободно переключаться.
2. Избегайте использования нескольких условий для суждения.
3. Хорошая масштабируемость.
Приложения в разработке на уровне предприятия и общих структурах: java.servlet.http.httpservlet Метод обслуживания
Пример: поведение операции на двух числах.
открытый класс демонстрация {public static void main (string [] args) {стратегия стратегии1 = new StrategyAdd (); Стратегия стратегии 2 = новая стратегия adiv (); Контекст контекста1 = новый контекст (стратегия1); контекст1.execute (10, 5); контекст1 = новый контекст (стратегия2); контекст1.execute (10, 5); }} интерфейс стратегия {public void dooperation (int num1, int num2);} class strategyadd реализует стратегию {public void dooperation (int num1, int num2) {System.out.println ("execute adding"); System.out.println (num1+"+"+num2+"="+(num1+num2)); }} Class StrategySub реализует стратегию {public void dooperation (int num1, int num2) {System.out.println ("execute forction"); System.out.println (num1+"-"+num2+"="+(num1-num2)); }} Class StrategyMul реализует стратегию {public void dooperation (int num1, int num2) {System.out.println ("execute multiplication"); System.out.println (num1+"*"+num2+"="+(num1*num2)); }} Class Strategydiv реализует стратегию {public void dooperation (int num1, int num2) {System.out.println ("Execute Division"); System.out.println (num1+"/"+num2+"="+(num1/num2)); }} class context {стратегия частной стратегии; общественный контекст (стратегия стратегии) {this.strategy = стратегия; } public void execute (int num1, int num2) {стратегия }}Модель политики подчеркивает изменения времени выполнения. Возможно, в приведенном выше коде эти изменения времени выполнения не очень хорошо отражены. Мы можем предположить, что практическое сценарий, то есть, когда параметр объекта передается в метод, предположим, что мы должны выбирать различные методы в соответствии с различными параметрами, мы рассмотрим, что If-Else судят, в то время как модель политики классифицирует эти IF-Else, каждый судит класс, а затем объект выходит и непосредственно называет метод политики. Конкретный класс параметров объекта принадлежит JVM. Нам не нужно понимать типы атрибутов параметров объекта и т. Д. Это не только упрощает нашу разработку, но также имеет лучшую масштабируемость по сравнению с IF-ELSE.
Выше всего содержание этой статьи. Я надеюсь, что это будет полезно для каждого обучения, и я надеюсь, что все будут поддерживать Wulin.com больше.