teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

追記

2019/11/23 05:40

投稿

LouiS0616
LouiS0616

スコア35678

answer CHANGED
@@ -1,2 +1,37 @@
1
1
  superやthisが無い場合のみ、super()が暗黙的に補われます。
2
- コンストラクタの呼び出し順は 4 ⇒ 3 ⇒ 2 ⇒ 1 です。
2
+ コンストラクタの呼び出し順は 4 ⇒ 3 ⇒ 2 ⇒ 1 です。
3
+
4
+ > この場合の実行結果は 1234 になります。
5
+
6
+ これは前段の主張と何ら矛盾しません。
7
+ ```Java
8
+ class Main {
9
+ static void func1() {
10
+ System.out.println(1);
11
+ }
12
+ static void func2() {
13
+ func1();
14
+ System.out.println(2);
15
+ }
16
+ static void func3() {
17
+ func2();
18
+ System.out.println(3);
19
+ }
20
+ static void func4() {
21
+ func3();
22
+ System.out.println(4);
23
+ }
24
+
25
+ public static void main(String[] args) {
26
+ func4();
27
+ }
28
+ }
29
+ ```
30
+
31
+ **実行結果** [Wandbox](https://wandbox.org/permlink/7hQdIh1tQSsvgdd3)
32
+ ```
33
+ 1
34
+ 2
35
+ 3
36
+ 4
37
+ ```