問題タブ [objectinstantiation]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Javaでインスタンス変数が自動初期化されるのはいつですか?
インスタンスの初期化の段階は、たとえばこの質問でキャプチャされます。それにもかかわらず、インスタンス変数が宣言されて自動初期化される瞬間を捉えていません。
以下のテスト コードから、Child クラスのインスタンス初期化子が実行される前でも、Child クラスのインスタンス変数 int "i" にアクセスできることがわかります。しかし、この i 変数はいつ宣言され、自動初期化されたのでしょうか?
コード
出力
静的な親の初期化
静的な子の初期化
親のインスタンス初期化子の実行中
print(): '親のインスタンス初期化子から実行' ; i=0
update(1): 更新後 i=1
親のコンストラクターの実行中
print(): '親のコンストラクターから実行' ; i=1
update(2): 更新後 i=2
子のインスタンス初期化子。i=3
子のコンストラクターが実行されています。i を 4 に設定
主に: 子供の i=4
主に: 親の i=1234