比如说Color接口有三个实现类分别是:Red、Blue和Green现在我要在运行的时候才决定用某个实现类怎么管理比较优雅?别if..else..
学习是最好的投资!
工厂方法模式
编程中有顺序、分支、循环三种结构。if-else作为最常用的分支结构,是不可或缺的。
顺序
分支
循环
if-else
关于这个问题,对于只要学习过编程的人,if-else都是最简明的编程方式。而最简单的就是最优雅的。
而if-else有时候看起来比较糟糕的地方在于,if中嵌套很多层if-else有时候看起来比较糟糕的地方在于,if中嵌套很多层
if
if的的时候就提前返回结果,保证if所以好的解决方案是,在能够提前退出
这里有一个类似的问题可以看下:
简单的设计与设计模式设计模式可以为你带来便利,但是不要在自己的解决方案中强套设计模式,你需要为自己的代码在
简单的设计
设计模式
题主的描述感觉比较符合设计模式中的策略模式。
策略模式
为什么不用多态了,丢给隐式的类型转换。根据接口方法的实现来处理啊。
工厂方法模式
编程中有
顺序
、分支
、循环
三种结构。if-else
作为最常用的分支结构,是不可或缺的。关于这个问题,对于只要学习过编程的人,
if-else
都是最简明的编程方式。而最简单的就是最优雅的。而
,导致逻辑判断深度过大。if-else
有时候看起来比较糟糕的地方在于,if
中嵌套很多层if-else
有时候看起来比较糟糕的地方在于,if
中嵌套很多层if
的的时候就提前返回结果,保证if
所以好的解决方案是,在能够提前退出这里有一个类似的问题可以看下:
简单的设计
与设计模式
设计模式可以为你带来便利,但是不要在自己的解决方案中强套设计模式,你需要为自己的代码在题主的描述感觉比较符合设计模式中的
策略模式
。为什么不用多态了,丢给隐式的类型转换。根据接口方法的实现来处理啊。