Java 17 Silver ・ 4. クラスの定義とインスタンスの使用
static 変数と static メソッド の練習問題と解説
Java 17 Silver ラボ の「4. クラスの定義とインスタンスの使用 › static 変数と static メソッド」の問題 6 問を載せています。問題を開くと、正解と選択肢ごとの解説が読めます。
static 変数と static メソッド について
static を付けた変数とメソッドは、インスタンスではなくクラスに属します。共有される値の変化と、static の中から使えるもの・使えないものを扱います。
static 変数はクラスに 1 つだけで、どのインスタンスから書き換えても同じ値が見えます。static メソッドの中には this が無いので、インスタンス変数やインスタンスメソッドを直接使うとコンパイルエラーです。使うには、インスタンスを作ってから呼びます。
static メンバはインスタンスの変数から呼んでもクラス名で呼んだのと同じ扱いになり、変数が null でも NullPointerException になりません。static 初期化子 (static { }) はクラスが初めて使われるときに 1 回だけ実行されます。出力の順番を問う問題では、main より前に main のクラスの static 初期化子が動くことに注意します。
問題 (6 問)
- static 変数は全インスタンスで共有
- static メソッドからインスタンス変数を使う
- インスタンスから static メソッドを呼ぶ
- null の変数から static 変数を使う
- static 初期化子の実行タイミング
- static メソッドからインスタンスメソッドを呼ぶ
「static 変数と static メソッド」をこのサイトで解く
広告