添加单一职责原则和里氏替换原则