interface」(接口)可將其想象爲一個「純」抽象類。它容許建立者規定一個類的基本形式:方法名、自變量列表以及返回類型,但不實現方法主體。接口也可包含基本數據類型的數據成員,但它們都默認爲public、static 和final。接口中定義的方法默認爲public、abstract。接口
爲何Java接口中的成員變量默認爲(public、static、final)、成員方法爲(public、abstract)呢?變量
接口是一種高度抽象的模版,接口中的成員變量是模版的一部分,其接口的實現類必須共有這些成員變量,因此成員變量的修飾符默認爲public、static、final。static使得實現這個接口的類,能夠直接使用這個變量。若是是非靜態變量,那麼接口的多個實現類可能出現變量名重名的現象。final表示被修飾的變量爲常數,不能夠修改。一個既是static又是final的字段表示只佔據一段不能改變的存儲空間。若是是非final變量,那麼接口的實現類能夠修改變量的值,這與抽象類沒有區別了。因爲接口起到標準化和規範化的做用,因此其成員變量默認修飾符爲static、final。數據類型