只看概念比较抽象,先上实例。一个违反里氏替换原则的例子、一个遵守里氏替换原则的例子。
// 绘制图形
void drawShape(Shape shape) {
if (shape.type == Shape.Circle) {
drawCircle((Circle) shape);
}
里氏替换原则通过多态实现面向接口编程,确保子类可以替换基类而不影响程序运行。它强调业务逻辑不应直接依赖具体实现,而应依赖基类接口。违反与遵循该原则的实例说明了其重要性。
只看概念比较抽象,先上实例。一个违反里氏替换原则的例子、一个遵守里氏替换原则的例子。
// 绘制图形
void drawShape(Shape shape) {
if (shape.type == Shape.Circle) {
drawCircle((Circle) shape);
}
3285

被折叠的 条评论
为什么被折叠?