第3回まで無料

Java 入門コース

JVM の仕組みから、型・制御構造・配列・メソッド・オブジェクト指向・例外・コレクション・ラムダと Stream まで。全50レッスンで「ファイルに保存できる ToDo アプリを自分で組み立てられる」ところまで進みます。コードと実行結果はすべて OpenJDK 21 で実際に動かしたものです。

カリキュラム

全50レッスンを7つの章に分けています。第1章から順に進めるのがおすすめですが、 気になるところだけ拾い読みしてもかまいません。 ※ ブラウザ内で実行できないため、手元の JDK 21 で javac と java を使って試してください。

Chapter 1 — 導入(第1〜6回)

Java が動く仕組みを押さえ、JDK を入れて自分の手で動かせる状態にします。変数・基本データ型・型変換まで進みます。

Chapter 2 — 値と文字列(第7〜12回)

演算子と定数、そして String を扱います。比較に == を使ってはいけない理由と、キーボード入力の受け取り方まで進みます。

Chapter 3 — 制御構造(第13〜18回)

条件分岐とくり返しを扱います。else if の順番、switch 式、無限ループの避け方、break と continue まで身につけます。

Chapter 4 — 配列とメソッド(第19〜25回)

同じ型の値をまとめて扱い、処理に名前を付けて分割します。最後は成績集計プログラムを 1 本組み立てます。

Chapter 5 — クラスとオブジェクト(第26〜33回)

オブジェクト指向の入口です。設計図とインスタンス、this、コンストラクタ、カプセル化、static、パッケージ、そして継承まで進みます。

26

クラスとオブジェクト

設計図とインスタンスの関係。1 人分のデータを 1 つにまとめ、型として扱えるようにする。

🔒 ベーシック
27

フィールドと this

フィールドはどのメソッドからも使える。引数名と同じときに this が要る理由と、インスタンスごとの状態。

🔒 ベーシック
28

コンストラクタ

作った瞬間に完成しているオブジェクト。this(...) による委譲と、デフォルトコンストラクタが消える条件。

🔒 ベーシック
29

アクセス修飾子とカプセル化

private でフィールドを守り、状態を変える方法を限定する。ゲッター・セッターを何にでも作らない理由。

🔒 ベーシック
30

static メンバ

static はインスタンスではなくクラスに属するという意味。main が static である理由と、使うべきでない場面。

🔒 ベーシック
31

パッケージと import

クラスの住所を決めて名前の衝突を防ぐ。import は別名の登録にすぎない、という理解まで。

🔒 ベーシック
32

継承

extends で共通部分をまとめる。super によるコンストラクタの連鎖と、is-a が成り立つかという判断基準。

🔒 ベーシック
33

オーバーライドと super

同じシグネチャで振る舞いを差し替える。@Override を必ず付ける理由と、実体でメソッドが決まる仕組み。

🔒 ベーシック

Chapter 6 — 抽象化と例外(第34〜41回)

抽象クラスとインターフェースで振る舞いを束ね、record と enum で型を整えます。最後は例外の投げ方・受け止め方を扱います。

Chapter 7 — コレクションと関数型(第42〜50回)

List / Map / Set とジェネリクス、ラムダ式と Stream、Optional、ファイル入出力。最後にファイルへ保存できる ToDo アプリを作ります。

42

List と ArrayList

長さを変えられる配列。インターフェース型で受ける定石、オートボクシングの落とし穴、ループ中の削除。

🔒 ベーシック
43

Map と HashMap

キーから値を一発で引く。存在しないキーは null、順序は保証されない、集計の定型パターン。

🔒 ベーシック
44

Set とコレクションの選び方

重複を許さない Set と集合演算。contains の速度差と、List / Map / Set を選ぶ 3 つの質問。

🔒 ベーシック
45

ジェネリクス

型引数が何をしているのか。raw type の危険、自作のジェネリッククラス、型の上限と型消去。

🔒 ベーシック
46

ラムダ式と関数型インターフェース

処理そのものを値として渡す記法。標準の関数型インターフェース、メソッド参照、Comparator。

🔒 ベーシック
47

Stream API

絞り込む・変換する・集計するを 1 つの流れで。groupingBy と、遅延評価・使い捨てという性質。

🔒 ベーシック
48

Optional と null 安全

「値がないかもしれない」を型で表す。orElse と map のチェーン、そして使ってよい場所の線引き。

🔒 ベーシック
49

ファイル入出力

java.nio.file.Files で数行の読み書き。行のリストとしての扱い、Files.lines、相対パスの基準。

🔒 ベーシック
50

【実践】ToDo アプリで総まとめ

enum・record・自作例外・List・Stream・Optional・ファイル入出力を 1 本に組み合わせる。

🔒 ベーシック

全50レッスンを終えたら、次は同じ言語で Web を作る Spring Boot 入門コース や、サーブレットの仕組みから学ぶ JSP / Servlet 入門コース へ。メンバーシップで全コースが解放されます。