• 概念:指一个软件实体(类、模块、函数)应该对扩展开放、对修改关闭
  • 强调:用抽象构建框架,用实现扩展细节
  • 提高软件系统的可复用性及可维护性

开闭原则的核心思想就是面向抽象编程
** 开闭原则(Open-Closed Principle) - 图1

事例一:

  1. public interface IFinance{
  2. Double getRate();
  3. }
  1. public class Self implements IFinance{
  2. private Double rate;
  3. public Self(Double rate){
  4. this.rate = rate;
  5. }
  6. public Double getRate(){
  7. return this.rate;
  8. }
  9. }
  1. public class Unite implements IFinance{
  2. private Double rate;
  3. public Self(Double rate){
  4. this.rate = rate;
  5. }
  6. public Double getRate(){
  7. return this.rate + 100;
  8. }
  9. }
  1. public class BLG extends Self{
  2. public BLG(Double rate){
  3. super(rate);
  4. }
  5. public Double getBLGRate(){
  6. return super.getRate() * 0.55555;
  7. }
  8. }