接口:
接口里只能包含抽象方法,不同包含已經(jīng)提供實(shí)現(xiàn)的方法
接口里只能定義靜態(tài)常量屬性,不能定義普通屬性。
接口不包含構(gòu)造器
抽象類:
抽象類則完全可以包含普通方法。
抽象類里可以定義靜態(tài)方法。
抽象類里則既可以定義普通屬性,也可以定義靜態(tài)常量屬性。
抽象類里可以包含構(gòu)造器,抽象類里的構(gòu)造器并不是用于創(chuàng)建對(duì)象,而讓其子類調(diào)用這些構(gòu)造器來(lái)完成屬于抽象類的初始化操作。
一個(gè)類最多只能有一個(gè)直接父類,包括抽象類。但一個(gè)類可以有多個(gè)接口,來(lái)彌補(bǔ)Java單繼承的不足。