面试题1:请解释Override与Overloading的区别
| 区别 | Override | Overloading |
|---|---|---|
| 含义 | 覆写 | 重载 |
| 概念 | 子类与父类方法名称,参数类型和个数相同 | 方法名称相同,参数个数和类型不同 |
| 权限 | 子类不能比父类权限更严格 | 无限制 |
| 范围 | 发生在继承关系类中 | 发生在一个类中 |
| 返回值 | - | 没限制,好习惯保持返回值一致 |
- this表示先从本类中查找需要的属性或者方法,不存在找父类;super直接从父类开始找
- this()调用本类构造方法,super()通过子类调用父类构造;必须置于构造方法首行,不能同时出现
- this表示当前对象
- 对参数进行统一设计,是向上转型最大的优点
- 使用子类特殊功能,是向下转型的优点:但是向下转型之前必须向上转型,否则报错:classCastException
- 可以用instanceof判断类:
Person per=new Person();
per instanceof Person-----TRUE
per instanceof Superman-----False



