Java 接口字段

2018-01-19 16:39 更新

Java面向?qū)ο笤O(shè)計(jì) - Java接口字段


一個(gè)接口可以有三種類型的成員:

  • 常量字段
  • 抽象,靜態(tài)和默認(rèn)方法
  • 靜態(tài)類型作為嵌套接口和類

一個(gè)接口不能有可變的實(shí)例和類變量。與類不同,接口不能被實(shí)例化。接口的所有成員都是隱式公開的。

常量字段聲明

我們可以在接口中聲明常量字段,如下所示。它聲明一個(gè)名為Choices的接口,它有兩個(gè)字段的聲明:YES和NO。兩者都是int數(shù)據(jù)類型。

public interface  Choices   {
    public static final int YES  = 1;
    public static final int NO  = 2;
}

接口中的所有字段都是隱式的public,static和final。

Choices接口可以聲明如下,而不改變其含義:

public interface  Choices   {
    int YES  = 1;
    int NO  = 2;
}

您可以使用點(diǎn)形式的形式訪問界面中的字段

<interface-name>.<field-name>

您可以使用Choices.YES和Choices.NO訪問Choices界面中的YES和NO字段的值。

下面的代碼演示了如何使用點(diǎn)符號(hào)來訪問接口的字段。

public class ChoicesTest {
  public static void main(String[] args) {
    System.out.println("Choices.YES = " + Choices.YES);
    System.out.println("Choices.NO = " + Choices.NO);
  }
}

接口中的字段總是最終的,無論關(guān)鍵字final是否在其聲明中使用。我們必須在聲明時(shí)初始化一個(gè)字段。

我們可以使用編譯時(shí)或運(yùn)行時(shí)常量表達(dá)式來初始化字段。由于final字段只賦值一次,因此除了聲明之外,我們不能設(shè)置接口字段的值。

以下代碼顯示了接口的一些有效和無效字段聲明:

public interface ValidFields {
  int X = 10;
  int Y = X;
  double N = X + 10.5;

  boolean YES = true;
  boolean NO = false;

  Test TEST = new Test();
}

使用接口中字段名稱中的所有大寫字母表示它們是常量是一種約定。

接口的字段總是公共的。



以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)