「Java 17」注目機能5選【後編】
「Java 17」の「NullPointerException例外処理分析」に役立つ機能は?
「Java 17」で利用可能な機能の中には、アプリケーション開発を支援するさまざまな機能がある。例外処理、switch文、継承に関する機能を解説する。
2021年9月にOracleはプログラミング言語・実行環境「Java」のLTS(長期サポート版)「Java 17」を提供開始した。前編「『Java 17』のうれしい機能『Recordクラス』『テキストブロック』は何が便利?」に続く本稿は、開発者にメリットをもたらすJava 17の機能5個のうち、残る3個を取り上げる。
機能3.NullPointerExceptionに関するログ
適切に書かれたプログラムでも、null値(データがない状態)の参照によるエラーが発生することは少なくない。Javaにおいてこのエラーを「NullPointerException」と呼ぶ。
Javaのログには、NullPointerExceptionが発生したときにどのオブジェクト(データと処理をまとめたもの)に問題があるのか、プログラムが何を参照したのかを知る手掛かりが多くなかった。Java 17ではnullだった変数の正確な名前がログに記録されるようになったことで、NullPointerExceptionの原因がより分かりやすくなった。
機能4.switch文の矢印
「switch」文は条件分岐を扱うための文だ。Javaのswitch文は複雑な条件分岐ロジックに適している。一方で条件ごとの処理で「break」を書かないと、後続の条件の処理も実行される点は直観的とは言えない。これはswitch文でエラーが起こりやすい原因となっていた。
Java 17ではswitch文で矢印(->)を使うことで、breakを使わずに後続の条件の処理を実行することなく指定の処理を実行できる。これによってswitch文が読みやすくなるとともに、ソースコードの記述やデバッグも容易になった。
機能5.Sealedクラス
クラス(オブジェクトの基となる設計図)の「継承」は、基となるクラスの変数(データの入れ物)やメソッド(データに対する操作)を引き継いで、新たなクラスを作成することだ。これまでは継承に基づいてオブジェクトが不正に作成されるのを防ぐ仕組みが、Javaにはほとんどなかった。
Java 17で正式に導入されたSealedクラスは、継承が想定外に使用されるのを防ぎやすくする。Sealedクラスは、継承できる変数やメソッドの名前を明示的に宣言できるクラスだ。
Java 17は構文や機能に大きな変更はないが、Java開発者にとって役立つ小さな改良が複数盛り込まれている。そうした改良は全て、Javaがこれからも開発に適したプログラミング言語であり続ける要因となるだろう。
TechTarget発 先取りITトレンド
米国TechTargetの豊富な記事の中から、最新技術解説や注目分野の製品比較、海外企業のIT製品導入事例などを厳選してお届けします。
Copyright © ITmedia, Inc. All Rights Reserved.
TechTarget発 先取りITトレンド
米国TechTargetの豊富な記事の中から、最新技術解説や注目分野の製品比較、海外企業のIT製品導入事例などを厳選してお届けします。
この記事の著者
関連記事
新着ホワイトペーパー PR
-
製品資料
[株式会社MatrixFlow] 「物流リソース最適化」ガイド:人員・配車・傭車を出庫依頼の確定前に決めきる -
製品資料
[株式会社キーエンス] なぜRPA導入は頓挫する? シナリオ作成の壁を乗り越える解決策とは -
製品資料
[株式会社セールスフォース・ジャパン] 「CRMは設計と無関係」は本当か? PLMとの融合で実現する高速開発 -
事例
[日本ヒューレット・パッカード合同会社] AIエージェントの時代にどう備える? 「新たな働き手」を支える3要素とは -
製品資料
[日本ヒューレット・パッカード合同会社] “横並びの自動化”から脱却、AI活用で生産性と競争力を高める秘訣
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
ChatGPTは“検索しまくり”でGeminiは“淡泊”? データが明かすAIの裏側
-
2
なぜ「全社配布Copilot」は使われないのか? 失敗に学ぶAI定着
-
3
法務と開発者で「言葉が通じない」問題 トヨタやソニーが語るOSS管理の真実
-
4
損保ジャパンはなぜ「COBOL」を捨てなかったのか? 脱メインフレームの真相
-
5
情シスの約8割が転職や退職を意識 調査で分かった“辞めたくなる最大の理由”
-
6
「IBM iはDXのボトルネック」は誤解 意外と知らない今風モダナイズの効果
-
7
Microsoft 365の知られざる5つの裏口 パスワードを変えても攻撃者は消えない
-
8
「結局使わなくなる」Microsoft 365 Copilotを半年で定着 キリンの3施策
-
9
【漫画付き】ひとり情シス協会が明かす、RAG導入でしくじる企業「2つの共通点」
-
10
「中堅・中小企業のネットワーク・セキュリティ運用実態」に関するアンケート
ホワイトペーパーランキング PR
-
1
不審メールの経路や見せ方に変化? 2026年夏の3事例から見えた動向と対処方法
-
2
家庭用Wi-Fiルーターの業務利用は危険? 避けるべき理由と具体的な対策
-
3
Microsoft 365を安全に運用 うっかりミスやサイバー攻撃に備えるデータ保護術
-
4
財務部門がAIを最大限に活用する方法 無駄のない戦略的リーダーシップへの道
-
5
LLMが兵器化? 元FBI高官が鳴らす警鐘とセキュリティツール統合のポイント
-
6
「オンプレミス回帰」せざるを得ない“合理的な理由”
-
7
なぜRPA導入は頓挫する? シナリオ作成の壁を乗り越える解決策とは
-
8
生成AIを開発に導入しても効果が見えない? 実証実験で分かった成果と課題
-
9
経産省DX指針から読み解く、受発注業務デジタル化ロードマップ
-
10
HDDを使わない「SSDオンリー」が無謀なのはなぜ?
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー