0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

“なぜそうなるのか?”を全部調べたJava Silver SE17黒本攻略記 #1

Last updated at Posted at 2025-09-19

黒本スタート!まずはJavaの基本文法と型を整理

Java Silver SE17(試験番号:1Z0-825)の資格取得を目指して、黒本(『徹底攻略 Java SE 17 Silver 問題集[1Z0-825]対応』)を使って学習を進めていきます。
「Javaの基本文法と型を整理しておきたい」これらに関しては今までの学習でも何度も出てきた内容です。
「黒本で学ぶのが一番」という情報を大切に、黒本の問題を一つずつ解きながら理解を深めていくスタイルで進めていきます。


📘今回の学習範囲

  • 基本文法(変数宣言、演算子、制御構文)
  • プリミティブ型と参照型
  • 型変換(暗黙的・明示的)
  • varの使い方と制限

🧠気づきと「なぜそうなるのか?」メモ

var は型推論だけど万能じゃない

var x = 10; // OK
var y;      // コンパイルエラー

なぜ?

  • var 右辺から型を推論するため、初期化なしでは型が決まらずエラーになる
  • 「型推論 ≠ 型省略」という点が重要

byte + byteint になる

byte a = 10;
byte b = 20;
byte c = a + b; // コンパイルエラー

なぜ?

  • Javaでは算術演算の結果は最低でも int 型になるため、byte + byte の結果は int
  • byte に代入するにはキャストが必要
byte c = (byte)(a + b);

==.equals() の違い

String s1 = "hello";
String s2 = new String("hello");

System.out.println(s1 == s2);      // false
System.out.println(s1.equals(s2)); // true

なぜ?

  • == は参照の比較、.equals() は値の比較
  • new String()で生成されたオブジェクトは異なる参照を持つため、==false になる

🔍 黒本でつまずいた問題と補足

int x = 5;
System.out.println(x++ + ++x);

一瞬どっちが先か混乱
x++ は後置なので5、++xは前置なので6となり、出力結果は 5 + 6 = 11 となる
演算子の優先順位と評価順はSilver試験でも頻繁に出題されているので慣れて置くようにする

🛠 今後の学習メモ

  • 制御構文(if, switch, for, while)の細かい挙動
  • 配列とコレクションの違い
  • 黒本の章末問題で理解度チェック

✍️ まとめ

黒本を進める中で、「なんとなく分かった」では済まされない部分が多く、
一つひとつの挙動に理由があることを実感しています。
今後も「なぜそうなるのか?」を軸に、理解を深めながら学習を進めていきます。
次回は、条件分岐とループ構文について掘り下げていく予定です!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?