java 基础学习之重载和重写的区别

重载和重写的区别

重载和重写的区别


  • 重载(OverLoad)和重写(OverRiding) 本质上都是多态特性的实现.

  • 重载是类统一调用方式。多个同名函数同时存在,但是有不同类型的入参(必须)出参.

    • 1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      @Test
      public void testOverLoad(){

      System.out.println(testOL1()); // 1
      System.out.println(testOL1(3));// 1.1

      }

      private Integer testOL1(){
      return 1;
      }

      private Double testOL1(Integer a){
      return 1.1;
      }
  • 重写(父子类之间的多态性)

    • 对父类函数中的函数进行重新定义。
    • 重写函数的入参(必须)和出参(必须)与父类函数一样.
    • 子类重写函数权限不能少于父类的。