zoukankan      html  css  js  c++  java
  • 重写,重载,super,this,继承

    重写:overwrite/override

      子类根据需要对从基类继承来的方法进行重写。

      重写方法必须与被重写方法有相同的方法名,参数列表和返回类型。

      重写方法不能使用比被重写方法更严格的访问权限。

    重载:overload

      一个类里,相同的方法名,参数列表不同,根据传入的参数列表来觉得调用哪个方法。

      参数列表必须不同:

        参数个数不同或者参数类型不同。

      只有返回值不同不能构成重载。因为“有返回值,但可以不用”,导致编译器无法识别到底用哪个。

      int和short可以作为区分,即可以重载。

      参数类型不同或者个数不同。

    子类调用基类方法:super

    子类调用自身:this 

      this(argument_list),调用自身构造方法。

    继承

      子类的构造过程必须调用基类的构造方法。

      子类可以在自己的构造方法中使用super(argument_list)调用基类的构造方法。

      子类还可以使用this(argument_list)调用本类另外的构造方法(重载)。

      如果调用super,必须写在子类构造方法的第一行。

      子类的构造方法中没有显示的调用基类构造方法时,系统默认调用基类无参构造方法。若基类没有无参构造方法,则编译出错。

    构造函数执行顺序:

      class A {A(){...}}

      public B extends A {

        B(){...}

        public static void main(String[] args){

          B b = new B();

        }

      }

      从main开始,按顺序执行,遇到类的实例化,即B b = new B(),开始执行构造函数,但首先执行的是基类,即A类的构造函数A(),然后才是B()。

    object类:

      object类是所有类的根基类。

      没有基类的类,默认继承object类。

  • 相关阅读:
    《剑指Offer》算法题——“旋转数组”的最小数字
    驱动是如何运行的
    Logistic回归,梯度上升算法理论详解和实现
    Python 字符串前面加'r'
    Python中文编码问题(字符串前面加'u')
    最大长度回文子串(Manacher's algorithm)
    没有重复字符的子串的最大长度
    Python格式化输出
    python strip()函数和Split函数的用法总结
    Python中的sorted函数以及operator.itemgetter函数
  • 原文地址:https://www.cnblogs.com/zawjdbb/p/6210683.html
Copyright © 2011-2022 走看看