JavaのLTS(長期サポート版)「Java 17」には、どのような機能があるのか。注目すべき機能のうち「Recordクラス」「テキストブロック」を取り上げる。
開発者はアプリケーションを開発するとき、利用するプログラミング言語の特定のLTS(長期サポート版)をベースにすることが一般的だ。プログラミング言語および開発・実行環境「Java」では、「Java 8」または「Java 11」が該当する。
2021年9月にOracleがLTS「Java 17」の提供を始めた。同社はJava 11からJava 17へのバージョンアップに際して、アプリケーション開発に役立つさまざまな機能を追加した。前後編にわたって、開発者にメリットをもたらすJava 17の機能5個を紹介する。
Javaの難点の一つは、「Python」「Groovy」など比較的新しいプログラミング言語と比べて冗長で形式張っていると捉えられがちなところだ。Recordクラスはこの問題を軽減する。
クラスとは、変数(データの入れ物)やメソッド(データに対する操作)をまとめた設計図だ。Javaのクラスはデータのみを扱うものが少なくない。インスタンス(クラスの設計に沿って生成した実体)が存続する間、データが変わらないようにしたい――。Recordクラスはこうした条件に適したクラスを実現する。
Recordクラスでは、後からクラスの構造やデータを変更できない。Recordクラスは状態が固定であることによって、Javaプログラムを実行する「Java仮想マシン」(JVM)の効率を高め、Javaアプリケーションにスケーラビリティをもたらす。
Java 11準拠のJavaプログラムでは、文字列操作の際に文字列の連結演算子やエスケープシーケンス(特定の文字を表すための代替文字列)が必要だった。Java 17では連結演算子やエスケープシーケンスを使わずに複数行の文字列を扱える「テキストブロック」を使用できるようになり、Javaプログラム内での文字列の操作が簡単になった。
後編は、残る3機能を紹介する。
米国TechTargetの豊富な記事の中から、最新技術解説や注目分野の製品比較、海外企業のIT製品導入事例などを厳選してお届けします。
Copyright © ITmedia, Inc. All Rights Reserved.
お知らせ
米国TechTarget Inc.とInforma Techデジタル事業が業務提携したことが発表されました。TechTargetジャパンは従来どおり、アイティメディア(株)が運営を継続します。これからも日本企業のIT選定に役立つ情報を提供してまいります。
10分でできるデジタル広告最適化 2500億通りのパターンを分析
ノバセルは、デジタルマーケティング領域の新ツール「ノバセル アナリティクス for デジ...
「怒り・恐怖」でクリックを生まない“ポジティブなSNS”は本当に作れるか BuzzFeedが挑戦
BuzzFeedが脱「SNARF」のポジティブなSNSを立ち上げる。狙いは何か。
「逆Z世代」の実態 Z世代のタイパ意識は意外と高くない?
自分はZ世代ではないと考える「逆Z世代」が増加している。大広とD’Zlab.が共同で実施し...