2021年11月09日 05時00分 公開
特集/連載

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

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

[Cameron McKenzie,TechTarget]

関連キーワード

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 マーケティング新着記事

news147.jpg

DX遅れまくり業界における挑戦 アステラス製薬が“脱プロモーションサイト”に向けてやったこと
DXが遅れがちなヘルスケア領域だが、顧客(医療従事者と、その先にいる患者)のニーズに...

news127.jpg

業界特化型CDPソリューション「DOMA」 電通デジタルが提供開始
独自に構成したテンプレートを使って業界特化型の汎用パッケージを開発。迅速かつ低コス...

news107.jpg

マーケターこそ今知るべき「インクルージョン」について
世界的な広告会社のグローバルCMOにして社会活動家でもあるアシシュ・パラシャール氏が、...