zoukankan      html  css  js  c++  java
  • 重写、重载、重用、重构

    一直以来,重写、重载、重用、重构四个概念比较容易混淆,现在详细记录一下这四个概念。

    重写:一般在面向对象编程语言中重写指的是方法重写,方法重写又称方法覆盖,就是子类可继承父类中的方法,而不需要重新编写相同的方法。但有时子类并不想原封不动地继承父类的方法,厕是想作一定的修改,这就需要对方法进行重写。若子类中的方法与父类中的某一方法具有相同的方法名、返回类型和参数,则新方法将覆盖原有的方法。

    重载:在面向对象编程中分为方法重载和运算符重载。方法重载是让类以统一的方式处理不同类型数据的一种手段。使用重载方法,可以在类中创建多个方法,它们具有相同的名字,但具有不同的参数和不同的定义。调用方法时,通过传递给它们的不同个数和类型的参数来决定具体使用哪个方法。运算符重载就是对已有的运算符重新进行定义,赋予其另一种功能,以适应不同的数据类型。

    重用:代码复用,也被称作软件复用。就是利用已有的代码,或者相关的知识去编写新的代码来构造软件,可以为软件的编写或工程的进展节省很多时间。

    重构:(Refactoring)就是在不改变软件现有功能的基础上,通过调整程序代码改善软件的质量、性能,使其程序的设计模式和架构更趋合理,提高软件的扩展性和维护性。 也许有人会问,为什么不在项目开始时多花些时间把设计做好,而要以后花时间来重构呢?要知道一个完美得可以预见未来任何变化的设计,或一个灵活得可以容纳任何扩展的设计是不存在的。系统设计人员对即将着手的项目往往只能从大方向予以把控,而无法知道每个细枝末节,其次永远不变的就是变化,提出需求的用户往往要在软件成型后,才开始"品头论足",系统设计人员毕竟不是先知先觉的神仙,功能的变化导致设计的调整再所难免。所以"测试为先,持续重构"作为良好开发习惯被越来越多的人所采纳,测试和重构像黄河的护堤,成为保证软件质量的法宝。[参见:http://baike.baidu.com/view/5310022.htm?fr=wordsearch

  • 相关阅读:
    learnyou 相关网站
    hdu 3038 How Many Answers Are Wrong
    hdu 3047 Zjnu Stadium 并查集高级应用
    poj 1703 Find them, Catch them
    poj 1182 食物链 (带关系的并查集)
    hdu 1233 还是畅通工程
    hdu 1325 Is It A Tree?
    hdu 1856 More is better
    hdu 1272 小希的迷宫
    POJ – 2524 Ubiquitous Religions
  • 原文地址:https://www.cnblogs.com/heppLuck/p/8575423.html
Copyright © 2011-2022 走看看