面试题:
方法重写和方法重载的区别?方法重载能改变返回值类型吗?
方法重载(Overload):本类中出现的方法名一样,参数列表不同的方法。与返回值无关。
子类对象调用方法的时候:先找子类本身,再找父类。
方法重写(Override):子类中出现了和父类中方法声明一模一样的方法。
当子类需要父类的功能,而功能主体子类有自己特有内容时,可以重写父类中的方法。
这样,即沿袭了父类的功能,又定义了子类特有的内容。
方法重载能改变返回值类型,因为它和返回值类型无关。
this关键字和super关键字分别代表什么?以及他们各自的使用场景和作用。
this:this代表本类对应的引用。
super:代表父类存储空间的标识(可以理解为父类引用,可以操作父类的成员)
A:调用成员变量
this.成员变量 调用本类的成员变量
super.成员变量 调用父类的成员变量
B:调用构造方法
this(...) 调用本类的构造方法
super(...) 调用父类的构造方法
C:调用成员方法
this.成员方法 调用本类的成员方法
super.成员方法 调用父类的成员方法 |
|