Item 20: Prefer interfaces to abstract classes(接口优于抽象类)
Javahastwomechanismstodefineatypethatpermitsmultipleimplementations:interfacesandabstractclasses.SincetheintroductionofdefaultmethodsforinterfacesinJava8[JLS9.4.3],bothmechanismsallowyoutoprovideimple