开闭原则是Java世界中最基本的设计原则,它指导我们如何建立一个稳定的、灵活的系统。
定义:
一个软件实体,如类、模块和函数,应该对扩展开放,对修改关闭。
什么意思呢?
就是你写的这个类,或者是接口、函数,当因需求发生变化而要进行修改的时候,不应该去修改原代码,而是对原代码进行扩展。
举个书店售书的栗子:
interface IBook {
// 获得书名
public String getName();
// 获得价格
public int getPrice();
// 获得作者
public String getAuthor();
}
// 小说类
class NovelBook implements IBook {
private String name;
private int price;
private String author;
public NovelBook(String name, int price, String author) {
super();
this.name = name;
this.price = price;
this.author = author;
}
@Override
public String getName() {
return name;
}
@Override
public int getPrice() {
return price;
}
@Override
public String getAuthor() {
return author;
}
}
public class Client {
p