書籍概要

本格学習 Java入門
[改訂3版]

著者
発売日
更新日

概要

既存の技術やシステム開発に止まらず,最新技術や大規模システムなどJavaを利用する様々な場面で必須の内容を厳選して掲載し,豊富なサンプルプログラムとともに説明しています。本書はJavaの文法やデータの入出力といった基礎からイベント処理・ネットワークプログラミングまで丁寧に解説し,簡単なゲームプログラミングを作成して行きます。Javaの最新版JDK 11に対応したことで新機能の1つである「JShell」を活用することで,はじめてJavaを学ぶ方でも無理なく理解できます。

こんな方におすすめ

  • Javaを初めて学ぶ方
  • Jshellに触れてみたい方

目次

1章 プログラミング言語Java

1-1 Javaとは

  • 1-1-1 Javaの歴史
  • 1-1-2 Javaの特徴

1-2 プログラム動作の仕組み

  • 1-2-1 プログラムが動作するまで
  • 1-2-2 Javaプログラムを動かすもの

2章 JShellによるJavaプログラミング体験

2-1 JShell

  • 2-1-1 JShellとは
  • 2-1-2 JShellの起動
  • 2-1-3 命令の入力と実行
  • 2-1-4 命令の編集
  • 2-1-5 命令の再実行

2-2 JShellを使いこなそう

  • 2-2-1 履歴機能(カーソル上下)
  • 2-2-2 補完機能(Tabキー)
  • 2-2-3 ドキュメント表示機能(Tabキー×2)
  • 2-2-4 保存と読み込み(/save, /open

2-3 プログラムの基本

  • 2-3-1 文とセミコロン
  • 2-3-2 ブロック
  • 2-3-3 インデントとフリーフォーマット
  • 2-3-4 コメント(注釈)

2-4 いろいろな「Hello.」

  • 2-4-1 変数を使ったHello.
  • 2-4-2 メソッドを使ったHello.
  • 2-4-3 クラスを使ったHello.
  • 2-4-4 GUIを使ったHello.

2-5 データの表示

  • 2-5-1 データを表示し改行する(System.out.println())
  • 2-5-2 データを表示する(System.out.print())
  • 2-5-3 数字や文字の表示

3章 型と変数

3-1 基本データ型の種類

  • 3-1-1 基本データ型の概要
  • 3-1-2 整数型
  • 3-1-3 浮動小数点型
  • 3-1-4 文字型
  • 3-1-5 論理型
  • 3-1-6 書式を指定してデータを表示する(Sysmtem.out.printf())
  • 3-1-7 桁などを指定した表示

3-2 変数

  • 3-2-1 変数と定数
  • 3-2-2 変数の宣言
  • 3-2-3 変数・定数への代入と表示
  • 3-2-4 変数の宣言と初期化
  • 3-2-5 型推論による変数宣言
  • 3-2-6 変数の有効範囲(スコープ)

3-3 キャスト

  • 3-3-1 ワイドニング変換
  • 3-3-2 ナローイング変換
  • 3-3-3 型のキャスト
  • 3-3-4 異なる種類の型へのキャスト

3-4 配列

  • 3-4-1 配列の概要
  • 3-4-2 配列の宣言
  • 3-4-3 配列の作成
  • 3-4-4 配列要素へのアクセス
  • 3-4-5 要素の自動生成とlength
  • 3-4-6 配列の代入
  • 3-4-7 多次元配列
  • 3-4-8 配列操作で発生するエラー

3-5 参照型

  • 3-5-1 String
  • 3-5-2 length()メソッド
  • 3-5-3 その他のメソッド

3-6 列挙型

  • 3-6-1 列挙型の書式
  • 3-6-2 列挙型の使い方

4章 演算子

4-1 演算子の種類

  • 4-1-1 演算子の概要
  • 4-1-2 演算子の優先順位

4-2 代入演算子

  • 4-2-1 左辺の値を右辺に設定する
  • 4-2-2 代入と型

4-3 算術演算子

  • 4-3-1 四則演算の実行
  • 4-3-2 除算する際の注意
  • 4-3-3 文字の演算
  • 4-3-4 文字列の加算

4-4 比較演算子

  • 4-4-1 同じ型の比較
  • 4-4-2 異なる型の比較

4-5 論理演算子

  • 4-5-1 論理演算の実行
  • 4-5-2 複数の論理演算子を使用する
  • 4-5-3 短絡評価

4-6 内部表現に関わる演算子

  • 4-6-1 2進数
  • 4-6-2 2の補数
  • 4-6-3 シフト演算子
  • 4-6-4 ビット演算子

4-7 二項演算子以外の演算子

  • 4-7-1 単項演算子
  • 4-7-2 インクリメント/デクリメント演算子
  • 4-7-3 条件演算子

5章 条件判断

5-1 単純な条件分岐(if)

  • 5-1-1 if文
  • 5-1-2 if else文
  • 5-1-3 if else文の応用
  • 5-1-4 複数の条件式

5-2 複数の条件分岐(switch)

  • 5-2-1 switch文
  • 5-2-2 break文
  • 5-2-3 switch文の応用

6章繰り返し 127

6-1 指定回数の繰り返し

  • 6-1-1 for文
  • 6-1-2 式の設定
  • 6-1-3 式の省略と無限ループ

6-2 条件指定の繰り返し

  • 6-2-1 while文(先判断)
  • 6-2-2 do while文(後判断)

6-3 繰り返しの制御

  • 6-3-1 繰り返し処理の多重化
  • 6-3-2 break文(強制終了)
  • 6-3-3 continue文(中断)
  • 6-3-4 ラベル

6-4 拡張for文

  • 6-4-1 拡張for文とfor文の違い

7章 メソッド

7-1 Javaプログラムの入力と実行

  • 7-1-1 プログラムの入力
  • 7-1-2 プログラムのコンパイル(翻訳)
  • 7-1-3 プログラムの実行
  • 7-1-4 プログラム実行時に発生するエラー

7-2 メソッドの基本

  • 7-2-1 メソッドを使った簡単なプログラム
  • 7-2-2 メソッドの書き方

7-3 引数と戻り値

  • 7-3-1 引数
  • 7-3-2 複数の引数
  • 7-3-3 戻り値
  • 7-3-4 return文
  • 7-3-5 引数と異なる型の戻り値

7-4 オーバーロード

  • 7-4-1 同じ名前を持つメソッド
  • 7-4-2 オーバーロードの活用

7-5 メソッド呼び出し

  • 7-5-1 メソッドからのメソッド呼び出し
  • 7-5-2 再帰呼び出し

8章 クラス

8-1 オブジェクトとクラス

  • 8-1-1 オブジェクト
  • 8-1-2 クラス
  • 8-1-3 インスタンス

8-2 クラスの作成

  • 8-2-1 分数クラス
  • 8-2-2 インスタンス
  • 8-2-3 設計図の改良
  • 8-2-4 this 参照
  • 8-2-5 コンストラクタ
  • 8-2-6 toString( )

8-3 クラスの継承

  • 8-3-1 クラスの継承とは
  • 8-3-2 継承
  • 8-3-3 継承とコンストラクタ
  • 8-3-4 super( )
  • 8-3-5 再定義(オーバーライド)

8-4 ラッパークラス

  • 8-4-1 ラッパークラスとは
  • 8-4-2 ラッパークラスの作成方法

8-5 パッケージ

  • 8-5-1 パッケージとクラス
  • 8-5-2 パッケージ名を使ったパッケージの利用
  • 8-5-3 importによるパッケージの利用

8-6 static修飾子

  • 8-6-1 静的変数(クラス変数)
  • 8-6-2 静的メソッド
  • 8-6-3 インナークラス

8-7 アクセス修飾子

  • 8-7-1 アクセス修飾子とは
  • 8-7-2 データの保護

9章 例外処理

9-1 例外とは

  • 9-1-1 プログラムを安全に動作させるには
  • 9-1-2 例外の種類

9-2 例外処理の記述

  • 9-2-1 例外捕捉(try catch)
  • 9-2-2 例外処理を他に任せる(throws)
  • 9-2-3 例外クラスの作成

10章 データの入出力

10-1 キーボードからの入力

  • 10-1-1 コマンドライン引数
  • 10-1-2 コマンドライン引数の型変換
  • 10-1-3 Scannerを利用したデータ入力

10-2 ファイルからのスキャン

  • 10-2-1 1行のスキャン
  • 10-2-2 try-with-resource

10-3 インターネット上のデータ読み込みとストリーム

  • 10-3-1 データを読み込むには

10-4 ファイル出力

  • 10-4-1 FileWriter

11章 マルチスレッド

11-1 マルチスレッドの体験

  • 11-1-1 シングルスレッドの処理
  • 11-1-2 マルチスレッドの処理

11-2 マルチスレッドプログラムの作成

  • 11-2-1 Threadクラスの継承
  • 11-2-2 Runnableインタフェースの実装
  • 11-2-3 同期
  • 11-2-4 状態

12章 ネットワークプログラミング

12-1 通信の仕組み

  • 12-1-1 アドレス
  • 12-1-2 ポート番号とソケット
  • 12-1-3 クライアント・サーバモデル

12-2 クライアントの作成

  • 12-2-1 クライアントソケットの作成
  • 12-2-2 ソケットからのデータ読み込み
  • 12-2-3 クライアントプログラムの作成

12-3 サーバの作成

  • 12-3-1 サーバソケットの作成
  • 12-3-2 クライアントとの接続
  • 12-3-3 クライアントへの出力
  • 12-3-4 サーバプログラムの作成
  • 12-3-5 プログラムの実行

12-4 プログラムの改良

  • 12-4-1 クライアントプログラムの改良
  • 12-4-2 サーバプログラムの改良
  • 12-4-3 改良プログラムの実行

12-5 複数のクライアントへの対応

  • 12-5-1 サーバプログラムの作成
  • 12-5-2 プログラムの実行

13章 GUIとイベント処理

13-1 GUIの作成

  • 13-1-1 Swingによるフレームの作成
  • 13-1-2 コンポーネントとコンテナ
  • 13-1-3 レイアウトマネージャ

13-2 イベント処理

  • 13-2-1 イベントソースとイベントリスナー
  • 13-2-2 イベント処理プログラム
  • 13-2-3 イベントの種類
  • 13-2-4 マウスのイベント処理

13-3 グラフィックスとアニメーション

  • 13-3-1 メッセージの出力
  • 13-3-2 グラフィックス
  • 13-3-3 アニメーション

13-4 ゲームプログラミング

  • 13-4-1 キー入力の判定
  • 13-4-2 フォーカス
  • 13-4-3 TinyPongの作成

サポート

ダウンロード

(2018年11月27日更新)

本書に関するサンプルファイルおよび練習問題の解答解説をダウンロードできます。
データは,圧縮ファイル形式でダウンロードできます。圧縮ファイルをダウンロードしていただき,適宜解凍してご利用ください。

ダウンロード
サンプルファイル
練習問題の解答解説

商品一覧