dje*_*lin 2 java oop design-patterns enum-flags
在 C 我做过这种事情
enum { USE_COKE = 1,
USE_PEPSI = 2,
USE_JUICE = 4,
USE_WATER = 8 };
int makeDrink(int flags);
//...
int rcode = makeDrink(USE_COKE | USE_JUICE | USE_WATER);
Run Code Online (Sandbox Code Playgroud)
我知道这是非常标准的,它也用于iostream例如。我想知道如何将这种设计模式翻译成 Java 或 OOP?我很确定多态性不是这里的方法,因为我的代码有一个if(flag_is_set)块比重写大部分例程更好。是否有实用程序Flags类,或使用配置对象、一个enum或一堆整数等执行此操作的首选方法。