![]() |
1
27
当每种情况对应于不同的类型时,多态性通常会替换switch语句。因此,我们没有:
你应该:
然而,对于您提供的比较类型的决策,多态性确实没有帮助。 |
![]() |
2
3
多态性在您提供的示例中并不真正适用。 |
![]() |
3
3
|
![]() |
4
3
在Smalltalk中,“if”实际上是布尔形式的多态方法。在以下示例中:
这个
因此,在Smalltalk中,多态性默认替换每个if-else构造:) |
![]() |
5
1
要以这种形式编码while循环,需要对比较x和y的结果调用choose方法,以确定是否为while循环内部调用块,并且该块还使用compare和choose来设置x的值。更直译的方法是选择一个将x设置为z的块或一个不做任何事情的块;相反,它只是使用choose将x设置回相同的值。 很明显,对于这个简单的案例来说,这是过度的,效率低下。
|
![]() |
Eris · 纯虚拟成员有什么优势吗(除了他们可能防止的人为错误)? 2 年前 |
|
James Nguyen · Java多态性:为什么返回错误? 7 年前 |
|
Alex Cristea · 如何从另一个类的数组中打印特定行 7 年前 |
![]() |
juztcode · C语言中的静态和动态分辨率++ 7 年前 |
![]() |
Hugo · 具有多态关系的活动记录获取关联模型 7 年前 |
![]() |
pooya13 · 机器代码层上虚函数和条件执行的区别 7 年前 |
![]() |
Nisba · C中子类类型未知的模型类/子类++ 7 年前 |
![]() |
R zu · 使用多次调用的可替换方法初始化 7 年前 |