1. 程式人生 > >為什麼接口裡的成員變數必須是public static final的?

為什麼接口裡的成員變數必須是public static final的?

public這個不用說了

介面是高層次的抽象,也可以理解為標準,既然是標準,那標準裡定義的屬性肯定不是為某一個具體實現標準的物件設定的,它應該是實現標準的物件們所共有的屬性,因此介面中的成員變數是static的。

至於final我們可以舉個例子:現在有一個介面IA,A1和A2都實現了該介面,如果IA中的成員變數不是final的,那麼A1和A2都可以根據自己的喜好更改這個變數,但他們使用的變數卻是同一個,這勢必會造成混亂,IA此時也就不能稱作一個標準了。

純個人理解,非原理性描述。