回答編集履歴

2

修正

2020/08/22 07:58

投稿

Zuishin
Zuishin

スコア28669

test CHANGED
@@ -16,6 +16,8 @@
16
16
 
17
17
 
18
18
 
19
+ つまりコンストラクタが呼ばれた時点で初期化子による初期化は終わっているので、コンストラクタではあるフィールドの値を見て別のフィールドを初期化することができます。
20
+
19
21
  またコンストラクタでは自由にメソッドを呼ぶことができますが、初期化子では限定されています。
20
22
 
21
23
  より詳細な解説が欲しい場合は次を読んでください。

1

修正

2020/08/22 07:58

投稿

Zuishin
Zuishin

スコア28669

test CHANGED
@@ -6,13 +6,13 @@
6
6
 
7
7
 
8
8
 
9
- > 1. インスタンス変数は、デフォルトの値で初期化(数値型は0、boolean型はfalse、char型は'\u0000'、オブジェクト参照はnull)
9
+ > . インスタンス変数は、デフォルトの値で初期化(数値型は0、boolean型はfalse、char型は'\u0000'、オブジェクト参照はnull)
10
10
 
11
- 2. スーパークラスのコンストラクタを呼び出す
11
+ > 2. スーパークラスのコンストラクタを呼び出す
12
12
 
13
- 3. インスタンス変数に対して明示的に指定された初期化子と、初期化ブロックで、初期化
13
+ > 3. インスタンス変数に対して明示的に指定された初期化子と、初期化ブロックで、初期化
14
14
 
15
- 4. コンストラクタで指定された処理で初期化
15
+ > 4. コンストラクタで指定された処理で初期化
16
16
 
17
17
 
18
18