Java.lang Packages Tutorial

Java.lang 包教程

Java - java.lang 包

Java.lang 包包含了 Java 程式語言設計的核心類。包裝類,例如 Integer、Boolean、Char 等,都是 lang 包的一部分。我們不需要顯式匯入 java.lang 包中的任何類,因為它們預設包含在內。本教程兼參考將帶您使用簡單實用的示例瞭解 java.lang 包中所有可用方法。

匯入 java.util 包

作為 Java 的內建包,我們不需要為 **java.lang** 包下載任何外部庫,並且可以使用以下語法匯入其所有類

import java.lang.*;

這裡我們使用 * 運算子匯入 java.lang 包中的所有類,現在程式中可以使用任何類。對於特定類,例如 Thread,我們可以使用以下語法匯入類

import java.lang.Thread;

作為 Java 的預設包,不需要匯入 java.lang 包,並且可以在不使用 import 語句的情況下訪問 lang 級別上的所有類。

為什麼在 Java 程式中使用 java.lang 包

Java.lang 包中的類包含基本類,例如包裝類、執行緒操作類、字串操作類、數學運算類等。以下列表顯示了 java.util 包中的一些類類別。

  • 包裝類 - java.lang 包包含包裝類,例如 Integer、Boolean、Float、Double 等,用於表示原始值。這些包裝類提供了許多有用的方法,並且可以在需要物件而不是原始值的地方使用。

  • UI 元件 - 基於 java.lang.awt 和 java.lang.swing 的元件是 Java 的核心 UI 元件,並提供事件處理功能。

  • 數學運算 - Math 和 StrictMath 類包含豐富的數學運算方法。

  • 執行緒操作 - Thread、ThreadLocal、ThreadGroup 等是多執行緒程式的重要類。

java.lang 包中的重要類

以下是 java.lang 包中一些重要類的列表

  • Boolean - Boolean 類將基本型別 boolean 的值包裝在一個物件中。Boolean 型別的物件包含一個型別為 boolean 的單個欄位。

  • Byte - Byte 類將基本型別 byte 的值包裝在一個物件中。Byte 型別的物件包含一個型別為 byte 的單個欄位。

  • Character - Character 類提供了一些有用的類(即靜態)方法來操作字元。

  • Character.Subset - Character.Subset 類例項表示 Unicode 字元集的特定子集。Character 類中定義的唯一子集族是 UnicodeBlock。

  • Character.UnicodeBlock - Character.UnicodeBlock 類是表示 Unicode 規範中字元塊的字元子集族。字元塊通常定義用於特定指令碼或目的的字元。

  • Class - Class 類例項表示正在執行的 Java 應用程式中的類和介面。它沒有公共建構函式。

  • ClassLoader - ClassLoader 類是負責載入類的物件。此類是抽象類。安全管理器可以使用它來指示安全域。

  • Compiler - Compiler 類用於支援 Java 到原生代碼的編譯器和相關服務。按照設計,它用作 JIT 編譯器實現的佔位符。

  • Double - Double 類將基本型別 double 的值包裝在一個物件中。Double 型別的物件包含一個型別為 double 的單個欄位。

  • Enum - Enum 類是所有 Java 語言列舉型別的公共基類。

  • Float - Float 類將基本型別 float 的值包裝在一個物件中。Float 型別的物件包含一個型別為 float 的單個欄位。

  • InheritableThreadLocal - InheritableThreadLocal 類擴充套件 ThreadLocal 以提供從父執行緒到子執行緒的值繼承:建立子執行緒時,子執行緒會接收所有可繼承執行緒區域性變數的初始值,而父執行緒具有這些值。

  • Integer - Integer 類將基本型別 int 的值包裝在一個物件中。Integer 型別的物件包含一個型別為 int 的單個欄位。

  • Long - Long 類將基本型別 long 的值包裝在一個物件中。Long 型別的物件包含一個型別為 long 的單個欄位。

  • Math - Math 類包含用於執行基本數值運算的方法,例如基本指數、對數、平方根和三角函式。

  • Number - Number 類是 java.lang 包中的抽象類。它是表示可轉換為基本資料型別(如 byte、short、int、long、float 和 double)的數值的類的超類。

  • Object - Object 類是類層次結構的根。每個類都具有 Object 作為超類。包括陣列在內的所有物件都實現了此類的方法。

  • Package - Package 類包含有關 Java 包的實現和規範的版本資訊。

  • Process - Process 類提供用於從程序執行輸入、向程序執行輸出、等待程序完成、檢查程序的退出狀態以及銷燬(殺死)程序的方法。

  • ProcessBuilder - ProcessBuilder 類用於建立作業系統程序。此類未同步。

  • Runtime - Runtime 類允許應用程式與應用程式正在執行的環境互動。

  • RuntimePermission - RuntimePermission 類用於執行時許可權。RuntimePermission 包含一個名稱(也稱為“目標名稱”),但沒有操作列表;您要麼擁有指定的許可權,要麼沒有。

  • SecurityManager - SecurityManager 類允許應用程式實現安全策略。它允許應用程式在執行可能不安全或敏感的操作之前確定操作是什麼以及是否在允許執行該操作的安全上下文中嘗試執行該操作。應用程式可以允許或拒絕操作。

  • Short - Short 類將基本型別 short 的值包裝在一個物件中。Short 型別的物件包含一個型別為 short 的單個欄位。

  • StackTraceElement - StackTraceElement 類元素表示單個堆疊幀。除堆疊頂部的堆疊幀外,所有堆疊幀都表示方法呼叫。

  • StrictMath - StrictStrictMath 類包含用於執行基本數值運算的方法,例如基本指數、對數、平方根和三角函式。

  • String - 字串在 Java 程式設計中被廣泛使用,是一系列字元。在 Java 程式語言中,字串被視為物件。Java 平臺提供 String 類來建立和操作字串。

  • StringBuffer - StringBuffer 類是可變的字元序列。StringBuffer 可用於輕鬆修改字串的內容。它提供了許多實用程式函式來操作字串。

  • StringBuilder - StringBuilder 類是可變的字元序列。這提供了與 StringBuffer 相容的 API,但沒有同步保證。

  • System - System 類包含幾個有用的類欄位和方法。它不能被例項化。

  • Thread - Thread 類是程式中的執行執行緒。Java 虛擬機器允許應用程式具有多個併發執行的執行執行緒。

  • ThreadGroup - ThreadGroup 類表示一組執行緒。它還可以包含其他執行緒組。執行緒組形成一棵樹,其中每個執行緒組(初始執行緒組除外)都有一個父執行緒組。

  • ThreadLocal - ThreadLocal 類提供執行緒區域性變數。

  • Throwable - Throwable 類是 Java 語言中所有錯誤和異常的超類。只有此類的例項(或其子類之一)的物件才能由 Java 虛擬機器丟擲或由 Java throw 語句丟擲。

  • Void - Void 類是一個不可例項化的佔位符類,用於儲存對錶示 Java 關鍵字 void 的 Class 物件的引用。

java.lang 包的示例

練習以下示例以學習 java.lang 包類別的概念和用法。

java.lang.Integer 的示例

以下程式說明了 Integer 支援的 valueOf() 方法的用法 -

package com.tutorialspoint;

public class IntegerDemo {

   public static void main(String[] args) {

      // create a String s and assign value to it
      String s = "+120";

      // create a Integer object i
      Integer i;

      // get the value of int from string
      i = Integer.valueOf(s);

      // print the value
      System.out.println( "Integer value of string " + s + " is " + i );
   }
}

輸出

讓我們編譯並執行上述程式,這將產生以下結果 -

Integer value of string +120 is 120

java.lang.Thread 的示例

以下程式說明了 Thread 支援的方法的用法 -

package com.tutorialspoint;

public class ThreadDemo implements Runnable {

   ThreadDemo() {
      // main thread
      Thread currThread = Thread.currentThread();
      
      // thread created
      Thread t = new Thread(this, "Admin Thread");
   
      System.out.println("current thread = " + currThread);
      System.out.println("thread created = " + t);
      
      // this will call run() function
      t.start();
   }

   public void run() {
      System.out.println("This is run() method");
   }

   public static void main(String args[]) {
      new ThreadDemo();
   }
} 

輸出

讓我們編譯並執行上述程式,這將產生以下結果 -

current thread = Thread[main,5,main]
thread created = Thread[Admin Thread,5,main]
This is run() method

java.lang.Math 的示例

以下程式說明了 Math 支援的方法的用法 -

package com.tutorialspoint;

public class MathDemo {

   public static void main(String[] args) {

      // get two double numbers
      double x = 60984.1;
      double y = -497.99;

      // get the natural logarithm for x
      System.out.println("Math.log(" + x + ")=" + Math.log(x));

      // get the natural logarithm for y
      System.out.println("Math.log(" + y + ")=" + Math.log(y));

      // get the max value
      System.out.println("Math.max(" + x + ", y" + ")=" + Math.max(x,y));

      // get the min value
      System.out.println("Math.min(" + x + ", y" + ")=" + Math.min(x,y));

   }
}	

輸出

讓我們編譯並執行上述程式,這將產生以下結果 -

Math.log(60984.1)=11.018368453441132
Math.log(-497.99)=NaN
Math.max(60984.1, y)=60984.1
Math.min(60984.1, y)=-497.99

何時使用 java.lang 包?

無論何時我們需要準備 UI、執行緒、使用包裝類等,都可以依賴於 java.lang 包中提供的類。本參考為初學者準備,幫助他們理解 Java.lang 包中所有可用方法的基本功能。

先決條件

在您開始使用本參考中提供的各種型別的示例進行練習之前,我假設您已經瞭解 Java 程式設計的基礎知識。

廣告