「Java 17」のうれしい機能「Recordクラス」「テキストブロック」は何が便利?「Java 17」注目機能5選【前編】

JavaのLTS(長期サポート版)「Java 17」には、どのような機能があるのか。注目すべき機能のうち「Recordクラス」「テキストブロック」を取り上げる。

2021年11月09日 05時00分 公開
[Cameron McKenzieTechTarget]

関連キーワード

Java | Oracle(オラクル)


 開発者はアプリケーションを開発するとき、利用するプログラミング言語の特定のLTS(長期サポート版)をベースにすることが一般的だ。プログラミング言語および開発・実行環境「Java」では、「Java 8」または「Java 11」が該当する。

 2021年9月にOracleがLTS「Java 17」の提供を始めた。同社はJava 11からJava 17へのバージョンアップに際して、アプリケーション開発に役立つさまざまな機能を追加した。前後編にわたって、開発者にメリットをもたらすJava 17の機能5個を紹介する。

機能1.Recordクラス

 Javaの難点の一つは、「Python」「Groovy」など比較的新しいプログラミング言語と比べて冗長で形式張っていると捉えられがちなところだ。Recordクラスはこの問題を軽減する。

 クラスとは、変数(データの入れ物)やメソッド(データに対する操作)をまとめた設計図だ。Javaのクラスはデータのみを扱うものが少なくない。インスタンス(クラスの設計に沿って生成した実体)が存続する間、データが変わらないようにしたい――。Recordクラスはこうした条件に適したクラスを実現する。

 Recordクラスでは、後からクラスの構造やデータを変更できない。Recordクラスは状態が固定であることによって、Javaプログラムを実行する「Java仮想マシン」(JVM)の効率を高め、Javaアプリケーションにスケーラビリティをもたらす。

機能2.テキストブロック

 Java 11準拠のJavaプログラムでは、文字列操作の際に文字列の連結演算子やエスケープシーケンス(特定の文字を表すための代替文字列)が必要だった。Java 17では連結演算子やエスケープシーケンスを使わずに複数行の文字列を扱える「テキストブロック」を使用できるようになり、Javaプログラム内での文字列の操作が簡単になった。


 後編は、残る3機能を紹介する。

TechTarget発 先取りITトレンド

米国TechTargetの豊富な記事の中から、最新技術解説や注目分野の製品比較、海外企業のIT製品導入事例などを厳選してお届けします。

ITmedia マーケティング新着記事

news018.jpg

Cookie廃止で広告主とデータプロバイダ、媒体社にこれから起きることとその対策
連載の最後に、サードパーティーCookie廃止が広告主と媒体社それぞれに与える影響と今後...

news100.jpg

メタバース生活者定点調査2023 メタバース利用経験は横ばいでも認知は向上
博報堂DYホールディングスによる「メタバース生活者定点調査2023」の結果です。メタバー...

news165.jpg

GoogleのBIツールからLINEにノーコードでデータ連携 primeNumberが「trocco action for Looker」を提供
primeNumberが「trocco action」の提供を開始。第一弾としてGoogleのBIツール「Looker」...