久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

使用Enums的策略模式。需要一個簡單的Java示例

瀏覽:130日期:2024-05-02 10:27:24
如何解決使用Enums的策略模式。需要一個簡單的Java示例?

應該這樣做:

interface Strategy { int execute(int a, int b);}enum Math implements Strategy { Add {@Overridepublic int execute(int a, int b) { return a + b;} }, Subtract {@Overridepublic int execute(int a, int b) { return a - b;} }, Multiply {@Overridepublic int execute(int a, int b) { return a * b;} };}

這是對策略使用的Wikipedia文章的重新實現enum。

或更長一點但更清楚的是一種策略模式:

public interface FailureStrategy { void fail (String message);}enum Failure implements FailureStrategy { Ignore {@Overridepublic void fail(String message) { // Do nothing on success.} }, LogToConsole {@Overridepublic void fail(String message) { System.out.println(message);} }, ErrToConsole {@Overridepublic void fail(String message) { System.err.println(message);} }, RingalarmBells {@Overridepublic void fail(String message) { // Left to the student.} }, SoundTheKlaxon {@Overridepublic void fail(String message) { // Left to the student.} }, EndTheWorld {@Overridepublic void fail(String message) { // Left to the student.} };}public class SomethingLethal { public FailureStrategy onFail = Failure.EndTheWorld;}public class SomethingDangerous { public FailureStrategy onFail = Failure.RingalarmBells;}public class SomethingBenign { public FailureStrategy onFail = Failure.Ignore;}解決方法

我試圖了解Java中的策略模式和枚舉。我已經對此進行了谷歌搜索,并找到了一些有關該主題的文章,但是對于我的理解,其中大多數似乎太復雜了。誰能提供一個簡單的示例或另一個鏈接,使用java中的外行術語枚舉來演示策略模式?

預先謝謝你。

標簽: java
相關文章:
主站蜘蛛池模板: 西和县| 庄河市| 南宁市| 元阳县| 双柏县| 涿州市| 固镇县| 临高县| 黄龙县| 丽江市| 旺苍县| 荔浦县| 砀山县| 永吉县| 涞水县| 三穗县| 原平市| 黑水县| 新河县| 沂水县| 车险| 铅山县| 宕昌县| 保亭| 宿松县| 永康市| 新兴县| 吴川市| 清水县| 蒲城县| 临江市| 胶南市| 石河子市| 顺昌县| 凤冈县| 蒙阴县| 广水市| 陆川县| 普格县| 淮北市| 泾阳县|