Overload和Override的区别?重载Overload:表示同⼀个类中可以有多个名称相同的⽅法,但这些⽅法的参数列表各不相同,参数个数或类型不同
重写Override:表示⼦类中的⽅法可以与⽗类中的某个⽅法的名称和参数完全相同
接⼝是否可以继承接⼝?接⼝是否⽀持多继承?类是否⽀持多继承?接⼝⾥⾯是否可以有⽅法实现
接⼝⾥可以有静态⽅法和⽅法体
接⼝中所有的⽅法必须是抽象⽅法(JDK8之后就不是)
接⼝不是被类继承了,⽽是要被类实现
接⼝⽀持多继承, 类不⽀持多个类继承
⼀个类只能继承⼀个类,但是能实现多个接⼝,接⼝能继承另⼀个接⼝,接⼝的继承使⽤extends关
键字,和类继承⼀样
是否了解JDK8⾥⾯接⼝新特性
interface中可以有static⽅法,但必须有⽅法实现体,该⽅法只属于该接⼝,接⼝名直接调⽤
该⽅法
接⼝中新增default关键字修饰的⽅法,default⽅法只能定义在接⼝中,可以在⼦类或⼦接⼝
中被重写default定义的⽅法必须有⽅法体
⽗接⼝的default⽅法如果在⼦接⼝或⼦类被重写,那么⼦接⼝实现对象、⼦类对象,调⽤该
⽅法,以重写为准
本类、接⼝如果没有重写⽗类(即接⼝)的default⽅法,则在调⽤default⽅法时,使⽤⽗类
(接⼝) 定义的default⽅法逻辑
抽象类(abstract class)和接口(interface)有什么异 同?
答:
抽象类和接口都不能够实例化,但可以定义抽象类和接口类型的引用。一个类如 果继承了某个抽象类或者实现了某个接口都需要对其中的抽象方法全部进行实 现,否则该类仍然需要被声明为抽象类。接口比抽象类更加抽象,因为抽象类中 可以定义构造器,可以有抽象方法和具体方法,而接口中不能定义构造器而且其 中 的 方 法 全 部 都 是 抽 象 方 法 。抽 象 类 中 的 成 员 可 以 是 pr iv at e 、默 认 、pr ot e c te d 、 pu b li c 的 ,而 接 口 中 的 成 员 全 都 是