関連サイト
本書の関連ページが用意されています。
内容紹介
シリーズ累計120万部突破の決定版入門書が最新情報に即して改訂! Javaエンジニアが身につけておくべき、開発現場の「常識」が一気に身につきます。
脱・入門を目指すエンジニアが、現場の常識をスムーズに習得できる秘密は、この3つです。
【1】現場に必要な周辺スキルを、まんべんなく解説
開発や設計手法、ツールについての知識不足でチームに迷惑をかけることがないように、各種APIに加え、開発現場で求められる内容について幅広く紹介します。指導係の先輩が後輩に渡す1冊としてもお勧めです。
【2】本格的な技術やそのおもしろさと出会うきっかけが満載
Javaの世界では、効率よく創造的に開発を進めるための技術や技法が日々生まれ進化しています。本書では、各分野から抽出した本格的な技術のエッセンスを、初学者にもわかりやすい形にアレンジして取り上げています。
【3】Java入門の世界観を引き継いでいて読みやすい
姉妹書『スッキリわかるJava入門』の登場人物や世界観を引き継ぎ、同じ主人公が現場に出て成長を目指すストーリーとなっています。初学者は、『入門』とあわせて本書を読むことで、効率的にJavaをマスターできます。一部の章では、『入門』と同様に、スマホやPCのWebブラウザでプログラミングができる「dokojava」※を使って学習を進められます。
第5版では、Java 25(LTS)に対応し、各種技術情報、ツールのバージョンを全般的に最新化しました。最新の仕様に則り、掲載コードから不必要な定型コードを省いて、より見やすく、理解しやすい紙面へ進化しています。本書を使って、ぜひJavaプロフェッショナルのステージへ一気に駆け上がってください。
※dokojavaご利用上の注意
dokojavaは、本書著者の所属企業(株式会社フレアリンク)が運営するサービスです。正式利用にはユーザー登録が必要になります。
dokojavaは新刊販売による収益で維持・運用されているサービスです。古書店やネットオークション等、新刊以外を購入された場合、一部の機能はご利用いただけません。あらかじめご了承ください。
dokojavaでは個人の方による独学での利用を前提に無料プランが提供されています。研修や学校等での利用や商用利用に関する専用プランについては、株式会社フレアリンクへお問い合わせください(専用プランの契約なく、商用利用や研修等による多人数同時アクセスが発生した場合、個人学習者の利用環境を保護するため、予告なくアクセスを制限させていただく場合があります)。
dokojavaへのアクセスは、セキュリティ及び国際プライバシー保護法令上の理由から、日本国内のみに限定しています。海外のネットワークからはご利用いただけません。
書誌情報
- 著者: 中山 清喬(著), 株式会社フレアリンク(監修)
- 発行日: 2026-06-23 (紙書籍版発行日: 2026-06-23)
- 最終更新日: 2026-06-23
- バージョン: 1.0.0
- ページ数: 736ページ(PDF版換算)
- 対応フォーマット: PDF, EPUB
- 出版社: インプレス
対象読者
著者について
中山 清喬
株式会社フレアリンク代表取締役。IBM内の先進技術部隊に所属しシステム構築現場を数多く支援。退職後も研究開発・技術適用支援・教育研修・執筆講演・コンサルティング等を通じ、「技術を味方につける経営」を支援。現役プログラマ。講義スタイルは「ふんわりスパルタ」。
株式会社フレアリンク
目次
はじめに
- dokojavaの使い方
- sukkiri.jpについて
- 本書の見方
chapter 0 Javaを使いこなす技術者を目指そう
- 0.1 ようこそJava実践の世界へ
第I部 さまざまな基本機能
chapter 1 インスタンスの基本操作
- 1.1 インスタンスの5大基本操作
- 1.2 インスタンスの文字列表現
- 1.3 インスタンスの等価判定
- 1.4 インスタンスの要約
- 1.5 インスタンスの順序付け
- 1.6 インスタンスの複製
- 1.7 レコード
- 1.8 この章のまとめ
- 1.9 練習問題
chapter 2 さまざまな種類のクラス
- 2.1 型安全という価値
- 2.2 ジェネリクス
- 2.3 列挙型
- 2.4 シールクラス
- 2.5 インナークラス
- 2.6 null安全性
- 2.7 この章のまとめ
- 2.8 練習問題
chapter 3 関数とラムダ式
- 3.1 関数オブジェクト
- 3.2 関数の代入
- 3.3 ラムダ式
- 3.4 関数オブジェクトの活用
- 3.5 StreamAPI
- 3.6 この章のまとめ
- 3.7 練習問題
chapter 4 JVM制御とリフレクション
- 4.1 JVMへのアクセス
- 4.2 JVMの終了
- 4.3 外部プログラムの実行
- 4.4 システムプロパティの利用
- 4.5 ロケールと国際化
- 4.6 メモリに関する状態の取得
- 4.7 リフレクション
- 4.8 この章のまとめ
- 4.9 練習問題
chapter 5 非標準ライブラリの活用
- 5.1 ライブラリとは
- 5.2 クラスパスのおさらい
- 5.3 commons-langを使ってみよう
- 5.4 ログ出力ライブラリ
- 5.5 オープンソースとライセンス
- 5.6 この章のまとめ
- 5.7 練習問題
第II部 外部資源へのアクセス
chapter 6 ファイルの操作
- 6.1 ファイル操作の前提知識
- 6.2 テキストファイルの読み書き
- 6.3 バイナリファイルの読み書き
- 6.4 ファイル操作の落とし穴
- 6.5 ストリームの概念
- 6.6 フィルタの活用
- 6.7 ファイルシステムの操作
- 6.8 この章のまとめ
- 6.9 練習問題
chapter 7 さまざまなファイル形式
- 7.1 データフォーマット
- 7.2 CSV形式
- 7.3 プロパティファイル形式
- 7.4 XML形式
- 7.5 JSON形式
- 7.6 オブジェクトの直列化
- 7.7 さまざまなフォーマット
- 7.8 この章のまとめ
- 7.9 練習問題
chapter 8 ネットワークアクセス
- 8.1 ネットワークAPIの全体像
- 8.2 Socketを用いた低水準アクセス
- 8.3 サーバ側ソフトウェアの開発
- 8.4 HTTPとWebAPI
- 8.5 この章のまとめ
- 8.6 練習問題
chapter 9 データベースアクセス
- 9.1 データベースとは
- 9.2 データベースの基本操作
- 9.3 データベースの接続と切断
- 9.4 更新系SQL文の送信
- 9.5 検索系SQL文の送信
- 9.6 結果表の処理
- 9.7 JavaとDBのデータ型
- 9.8 トランザクション処理
- 9.9 この章のまとめ
- 9.10 練習問題
第III部 効率的な開発の実現
chapter 10 基本的な開発ツール
- 10.1 Javaが備える基本ツール
- 10.2 JDK
- 10.3 javadoc ─ 仕様書の自動生成
- 10.4 javac ─ コンパイル
- 10.5 jar ─ アーカイブの操作
- 10.6 java─ JVMの起動と実行
- 10.7 jshell─ Javaの対話的実行
- 10.8 統合開発環境
- 10.9 Ant
- 10.10 Maven
- 10.11 この章のまとめ
- 10.12 練習問題
chapter 11 単体テストとアサーション
- 11.1 不具合に対するアプローチ
- 11.2 単体テストの方法
- 11.3 JUnitを用いたテスト
- 11.4 アサーション
- 11.5 この章のまとめ
- 11.6 練習問題
chapter 12 メトリクスとリファクタリング
- 12.1 品質の「見える化」
- 12.2 さまざまなメトリクス
- 12.3 リファクタリング
- 12.4 コードの静的解析
- 12.5 この章のまとめ
- 12.6 練習問題
chapter 13 ソースコードの管理と共有
- 13.1 チームによる開発
- 13.2 ソースコードの共有
- 13.3 Gitの基礎
- 13.4 Gitツールの利用
- 13.5 競合の発生と解決
- 13.6 commitの制御
- 13.7 ブランチ
- 13.8 Gitサーバ
- 13.9 この章のまとめ
- 13.10 練習問題
chapter 14 アジャイルな開発
- 14.1 チーム開発の基盤
- 14.2 共通の言葉
- 14.3 共通の手順
- 14.4 アジャイルという価値観
- 14.5 エクストリーム・プログラミング(XP)
- 14.6 スクラム(Scrum)
- 14.7 継続的デプロイメント
- 14.8 この章のまとめ
- 14.9 練習問題
第IV部 より高度な設計を目指して
chapter 15 設計の原則とデザインパターン
- 15.1 優れた設計の原則
- 15.2 コード記述全般に関する原則
- 15.3 クラスの設計に関する原則
- 15.4 クラスの関係に関する原則
- 15.5 デザインパターン
- 15.6 Facade ─ 内部を隠してシンプルに
- 15.7 Singleton ─ 唯一無二の存在
- 15.8 Strategy ─ プラグインの切り替え
- 15.9 TemplateMethod ─ 大まかなシナリオ
- 15.10 モジュール
- 15.11 この章のまとめ
- 15.12 練習問題
chapter 16 スレッドによる並列処理
- 16.1 処理効率の追求
- 16.2 Javaにおける並列処理
- 16.3 スレッドセーフな設計
- 16.4 スレッド活用と高水準API
- 16.5 この章のまとめ
- 16.6 練習問題
chapter 17 ユーザーインタフェース制御
- 17.1 ユーザーインタフェース
- 17.2 ウィンドウUIの基礎
- 17.3 Swing APIの基礎
- 17.4 レイアウト
- 17.5 イベントハンドリング
- 17.6 この章のまとめ
- 17.7 練習問題
