java接口的成員變量的修飾符


前言:c++學的java都忘記了不少

interface(接口)可將其想象為一個"純"抽象類。它允許創建者規定一個類的基本形式:方法名、自變量列表以及返回類型,但不實現方法主體

接口也可包含基本數據類型的數據成員,但它們都默認為publicstaticfinal

接口中定義的方法默認為publicabstract

為什么Java接口中的成員變量默認為(public、static、final)、成員方法為(public、abstract)呢?

原因:接口是一種高度抽象的模版,接口中的成員變量是模版的一部分,其接口的實現類必須共有這些成員變量,所以成員變量的修飾符默認為public、static、final。static使得實現這個接口的類,可以直接使用這個變量。

如果是非靜態變量,那么接口的多個實現類可能出現變量名重名的現象。

final表示被修飾的變量為常數,不可以修改。一個既是static又是final的字段表示只占據一段不能改變的存儲空間。如果是非final變量,那么接口的實現類可以修改變量的值,這與抽象類沒有區別了。

由於接口起到標准化和規范化的作用,所以其成員變量默認修飾符為static、final。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM