例如,我有一个接口和一堆类如下
public interface Drawable{
void draw(); // draws something on screen for example.
}
abstract class Shape implements Drawable {...}
class Circle extends Shape{...} // assume that draw() is implemented in both classes.
class Square extends Shape{...} // ...
现在,如果我有一个主类并执行以下操作:
class Main{
Shape s1 = new Circle();
s1.draw(); // assume that this will draw a circle.
s1 = new Square();
s1.draw(); //assume that this will draw a square.
}
我在这里使用设计模式?或者这只是标准的多态性?如果这是一个设计模式,那么它叫什么?
答案 0 :(得分:1)
答案 1 :(得分:0)
1998年写了一本Java书,仍然可用at Amazon,在第4章中,将“Inteface”,“Abstract Superclass”和其他内容称为“基本设计模式”。
这种说法有点争议,因为很多人会说这些只是基本机制而不是“设计模式”。
简短的回答是:人们会给你两个答案,但根据我的经验,大多数人会拒绝。