Java 教程

Java 控制語句

面向物件程式設計

Java 內建類

Java 檔案處理

Java 錯誤和異常

Java 多執行緒

Java 同步

Java 網路

Java 集合

Java 介面

Java 資料結構

Java 集合演算法

高階 Java

Java 雜項

Java API 和框架

Java 類參考

Java 有用資源

Java - private 關鍵字



Java 提供了許多訪問修飾符來設定類、變數、方法和建構函式的訪問級別。這四個訪問級別是:

  • 對包可見,預設值。不需要修飾符。

  • 僅對類可見(私有)。

  • 對全世界可見(公共)。

  • 對包和所有子類可見(受保護)。

訪問控制和繼承

強制執行以下繼承方法規則:

  • 在超類中宣告為公共的方法也必須在所有子類中為公共的。

  • 在超類中宣告為受保護的方法必須在子類中為受保護或公共的;它們不能是私有的。

  • 私有方法根本不會被繼承,因此沒有關於它們的規則。

私有訪問修飾符 - 私有

宣告為私有的方法、變數和建構函式只能在宣告的類本身中訪問。

私有訪問修飾符是最嚴格的訪問級別。類和介面不能是私有的。

如果類中存在公共 getter 方法,則可以在類外部訪問宣告為私有的變數。

使用私有修飾符是物件封裝自身並隱藏外部世界資料的主要方法。

示例

以下類使用私有訪問控制。我們使用瞭如下所示的私有欄位:

package com.tutorialspoint;

public class JavaTester {

   private String format;

   public String getFormat() {
      return this.format;
   }

   public void setFormat(String format) {
      this.format = format;
   } 

   public void print() {
      System.out.println(this.format);
   }

   public static void main(String args[]) {
      JavaTester tester = new JavaTester();
      tester.setFormat("XML");
      tester.print();
   }	   
}

輸出

XML

這裡,Logger 類的 format 變數是私有的,因此其他類無法直接檢索或設定其值。

因此,為了使此變數可用於外部世界,我們定義了兩個公共方法:getFormat(),它返回 format 的值,以及 setFormat(String),它設定其值。

以下是私有訪問識別符號的另一個示例。我們在超類中定義了一個私有欄位。如果欄位/方法是私有的,則子類無法繼承它。

示例

package com.tutorialspoint;

class Logger {
   private String format;

   public String getFormat() {
      return this.format;
   }

   public void setFormat(String format) {
      this.format = format;
   } 

   public void print() {
      System.out.println(this.format);
   }
}

public class JavaTester extends Logger {   
   public static void main(String args[]) {
      JavaTester tester = new JavaTester();

      tester.setFormat("XML");
      tester.print();
   }	   
}

輸出

XML
java_basic_syntax.htm
廣告

© . All rights reserved.