1. 程式人生 > >介面中的預設成員修飾符

介面中的預設成員修飾符

先不帶修飾符編寫一個介面 這裡寫圖片描述

我們將次介面編譯之後再反編譯出來 這裡寫圖片描述 通過反編譯的結果看到,介面變成了抽象介面,屬性都變成了public static final修飾。方法都變成了public abstract修飾。那麼我們總結一下:介面中可以含有 變數和方法。但是要注意,介面中的變數會被隱式地指定為public static final變數(並且只能是public static final變數,用private修飾會報編譯錯誤),而方法會被隱式地指定為public abstract方法且只能是public abstract方法(用其他關鍵字,比如private、protected、static、 final等修飾會報編譯錯誤),並且介面中所有的方法不能有具體的實現,也就是說,介面中的方法必須都是抽象方法。從這裡可以隱約看出介面和抽象類的區別,介面是一種極度抽象的型別,它比抽象類更加“抽象”,並且一般情況下不在介面中定義變數。