java 继承 重写 重载 super关键字
继承:
当一个子类继承一个父类的时候,子类会首先调用父类的无参构造方法。
当父类明确写出有参构造方法,且没有写无参构造方法时,继承时则需要用,super(参数。。。) 去调用父类的构造方法,调用父类的构造方法必须放在子类的构造方法的首行。
当父类没有写构造方法时,super(参数。。。)可以不写。但是依旧会调用父类的无参构造。
(当一个类中没有写构造方法时,编译器会自动加上一个无参构造方法)
重写需要注意访问权限的问题,只能大的访问权限重写小的访问权限
private<default(不写修饰符)<public
重写之后 如果真需要调用父类的方法可以通过(super.方法)调用。
如果父类 用 private 声明了一个方法,子类用default 复写方法,不算复写,而是又在子类中重新写的一个新方法,因为private 是私有方法。
重载:
方法名称相同,参数个数或者类型不同。对修饰符的权限没有要求
发生在一个类中
覆写:
方法名称,参数类型,返回值类型,全部相同。对修饰符的权限有要求,private<default(不写修饰符)<public
发生在继承中