Java 14 - 新功能
你好,有志於Java程式設計的各位!我很高興能夠帶領你們進入Java 14及其新功能的精彩世界。作為一個教導計算機科學多年的老師,我可以確保你們,學習Java就像踏上了一場冒險——總有新的事物等待著你去發現。那麼,讓我們一起潛入Java 14的奇蹟吧!
Java 控制語句
在我們深入Java 14的新功能之前,讓我們快速回顧一些基本控制語句。這些是任何Java程序的基石,理解它們對於精通這種語言至關重要。
如果-否則語句
如果-否則語句就像道路上的分叉——它允許你的程序基於某些條件進行決策。
int age = 18;
if (age >= 18) {
System.out.println("你可以投票!");
} else {
System.out.println("對不起,你還太小,無法投票。");
}
在這個例子中,如果年齡大於或等於18歲,程序將會打印 "你可以投票!"。否則,它將打印 "對不起,你還太小,無法投票。"
for循環
for循環就像一個旋转木馬——它允許你重複一段代碼指定的次數。
for (int i = 1; i <= 5; i++) {
System.out.println("計數: " + i);
}
這個循環將打印數字1到5,每個數字佔一行。
面向對象程式設計
Java是一種面向對象程式設計(OOP)語言,這意味著它是基於"對象"的概念,這些對象包含數據和代碼。讓我們看一個簡單的類別範例:
public class Dog {
String name;
int age;
public void bark() {
System.out.println(name + " says: 汪!");
}
}
在這裡,我們定義了一個Dog
類別,它有屬性(name和age)和方法(bark)。你可以這樣創建和使用這個類別的對象:
Dog myDog = new Dog();
myDog.name = "Buddy";
myDog.age = 3;
myDog.bark(); // 輸出: Buddy says: 汪!
Java 內置類別
Java提供了許多內置類別,讓我們的生活變得更加輕鬆。其中最常用的是String
類別。
String greeting = "Hello, Java 14!";
System.out.println(greeting.length()); // 輸出: 16
System.out.println(greeting.toUpperCase()); // 輸出: HELLO, JAVA 14!
Java 文件處理
文件處理對於許多應用程序來說至關重要。以下是一個簡單的寫入文件的例子:
import java.io.FileWriter;
import java.io.IOException;
public class FileWriteExample {
public static void main(String[] args) {
try {
FileWriter writer = new FileWriter("output.txt");
writer.write("Hello, Java 14!");
writer.close();
System.out.println("成功寫入文件。");
} catch (IOException e) {
System.out.println("發生錯誤。");
e.printStackTrace();
}
}
}
這段代碼創建了一個名為"output.txt"的文件,並將"Hello, Java 14!"寫入其中。
Java 錯誤與異常
錯誤和異常是編程生活中的一部分。Java提供了一個強大的機制來處理它們。以下是一個例子:
public class DivisionExample {
public static void main(String[] args) {
try {
int result = 10 / 0;
System.out.println("結果: " + result);
} catch (ArithmeticException e) {
System.out.println("錯誤:不能除以零!");
}
}
}
這個程序試圖除以零,這通常會導致錯誤。然而,我們將其包裹在try-catch塊中以優雅地處理異常。
Java 14的新功能
現在,讓我們探討一些在Java 14中引入的令人興奮的新功能!
記錄
記錄是Java 14中的一種新型類別,它讓創建有簡單、不可變數據載體的類別變得容易。當你只需要一個類別來保存一些數據時,它們非常適合。
public record Person(String name, int age) { }
這個簡單的聲明創建了一個具有兩個字段(name和age)、構造函數以及如equals()
、hashCode()
和toString()
等方法類別。它等價於一個傳統類別定義的長得多!
instanceof
的樣式匹配
Java 14引入了一個包含樣式匹配的改进版的instanceof
運算符。這使得你的代碼更簡潔且易於閱讀。
if (obj instanceof String s) {
// 在這裡可以使用s作為String
System.out.println(s.length());
}
在這個例子中,如果obj
是一個String,它將自動被轉為String並將變量س
分配給它。
Switch 表達式
Switch表達式在早期的版本中已經被預覽,現在在Java 14中成為了標準。它們允許你將switch作為表達式使用,並產生一個值。
String dayType = switch(dayOfWeek) {
case MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY -> "工作日";
case SATURDAY, SUNDAY -> "週末";
};
這個switch表達式根據dayOfWeek
的值將"工作日"或"週末"分配給dayType
。
有用的空指針異常
Java 14提供了更為有用的NullPointerException
消息,準確指出哪個變量是空的。
Person person = null;
System.out.println(person.name);
而不是一個通用的NullPointerException
,你會得到一個像"不能調用 'Person.getName()' 因為 'person' 是空的"這樣的消息。
這些只是Java 14中的一些新功能。在你繼續你的Java旅程時,你會發現這種強大語言的許多其他令人興奮的功能。記住,編程是一項通過練習來提高的技能,所以不要害怕嘗試和編寫大量代碼!
未來的Java專家們,快樂編程!
Credits: Image by storyset