回答編集履歴

2

修正

2021/06/17 05:00

投稿

ozwk
ozwk

スコア13551

test CHANGED
@@ -1,28 +1,12 @@
1
- > Sample1のように、エントリーポイントの中で自身(Mainメソッド)を含むクラスのインスタンスを行ってよい理由がどうしてもしっくりと理解できません。
2
-
3
- 再帰的に自分(Mainメソッド)を呼び出せるように見えてしまって、どうしても違和感が拭えません。
1
+ > 再帰的に自分(Mainメソッド)を呼び出せるように見えてしまって、どうしても違和感が拭えません。
4
2
 
5
3
 
6
4
 
7
- > アプリケションが起動した際に自動的にMainメソッが自動的に呼ばれ
5
+ 今回の質問のコードでは別再帰び出しはしていませんが
8
6
 
9
- そこで、Main自身含むクラスをインスタンス化しているという構造違和感を覚えてしっておるのです・・・
7
+ `Main()`再帰呼び出も別問題ありせん。
10
8
 
11
-
12
-
13
- そもそも`Main()`は`static`メソッドなので、インスタンスとは無関係です。
14
-
15
-
16
-
17
- ---
18
-
19
-
20
-
21
- > 再帰的に自分(Mainメソッド)を呼び出せるように見えって
9
+ なので違和感の前提がそもそも間違っ
22
-
23
-
24
-
25
- 今回の質問とは余り関係なさそうですが、`Main()`を再帰呼び出ししても別に問題ありません。
26
10
 
27
11
 
28
12
 

1

追記

2021/06/17 05:00

投稿

ozwk
ozwk

スコア13551

test CHANGED
@@ -11,3 +11,43 @@
11
11
 
12
12
 
13
13
  そもそも`Main()`は`static`メソッドなので、インスタンスとは無関係です。
14
+
15
+
16
+
17
+ ---
18
+
19
+
20
+
21
+ > 再帰的に自分(Mainメソッド)を呼び出せるように見えてしまって
22
+
23
+
24
+
25
+ 今回の質問とは余り関係なさそうですが、`Main()`を再帰呼び出ししても別に問題ありません。
26
+
27
+
28
+
29
+ ```C#
30
+
31
+ public class Hello{
32
+
33
+ public static void Main(string[] args){
34
+
35
+ if(args.Length == 0){
36
+
37
+ System.Console.WriteLine("Hello C#");
38
+
39
+ Main(new string[]{"hoge"});
40
+
41
+ return;
42
+
43
+ }
44
+
45
+ System.Console.WriteLine("Hello C#!!!");
46
+
47
+ }
48
+
49
+ }
50
+
51
+
52
+
53
+ ```