• 里氏替换原则


    原则:子类可以扩展父类的功能,但不能改变父类原有的功能。
    父类能出现的地方都可以用子类来代替,而且换成子类也不会出现任何错误或异常,而使用者也无需知道是父类还是子类,
    但反过来则不成立。总之,就是抽象。
     
    1. 子类必须完全实现父类的抽象方法,但不能覆盖父类的非抽象方法;
    2. 子类中可以增加自己特有的方法;
    3. 当子类的方法重载父类的方法时,方法的前置条件(即方法的形参)要比父类方法的输入参数要更宽松;
    4.当子类的方法实现父类的抽象方法时,方法的后置条件(即方法的返回值)要比父类更严格。
    优点:
    1. 提高代码的重用性,子类拥有父类的方法和属性;
    2. 提高代码的可扩展性,子类可形似于父类,但异于父类,保留自我的特性;
    缺点:
    1. 继承是侵入性的,只要继承就必须拥有父类的所有方法和属性,在一定程度上约束了子类,降低了代码的灵活性;
    2. 增加了耦合,当父类的常量、变量或者方法被修改了,需要考虑子类的修改,所以一旦父类有了变动,很可能会造成
    非常糟糕的结果,要重构大量的代码。

  • 相关阅读:
    linux 内核优化
    ip_forward与路由转发
    mysql 集群 galera
    mysql 中间件 mycat
    mysql 主-主-从-从
    mysql 主从复制
    mysql 备份
    mysql 日志
    java中四种权限修饰符区别
    Java中关于Math的几个取整方法的区别
  • 原文地址:https://www.cnblogs.com/yangqiong1989/p/10568141.html
Copyright © 2020-2023  润新知