回答編集履歴

1

回答自体変更

2018/06/26 22:57

投稿

tamoto
tamoto

スコア4110

test CHANGED
@@ -1,8 +1,6 @@
1
1
  こんにちは。
2
2
 
3
-
4
-
5
- 目的が不明なので外してるかもしれませんが、staticコンストラクタでは目的を達成できませんか?
3
+ ~~目的が不明なので外してるかもしれませんが、staticコンストラクタでは目的を達成できませんか?~~
6
4
 
7
5
 
8
6
 
@@ -17,3 +15,85 @@
17
15
 
18
16
 
19
17
  ```
18
+
19
+
20
+
21
+ ---
22
+
23
+
24
+
25
+ 追記
26
+
27
+
28
+
29
+ コードが別物ですけど、テンプレートメソッドパターン……とか。
30
+
31
+
32
+
33
+ ```csharp
34
+
35
+ public abstract class Sample
36
+
37
+ {
38
+
39
+ public void Run()
40
+
41
+ {
42
+
43
+ this.SET();
44
+
45
+ this.Action();
46
+
47
+ }
48
+
49
+
50
+
51
+ private void SET()
52
+
53
+ { }
54
+
55
+
56
+
57
+ protected abstract void Action();
58
+
59
+ }
60
+
61
+
62
+
63
+ public class A : Sample
64
+
65
+ {
66
+
67
+ protected override void Action()
68
+
69
+ {
70
+
71
+ // A...
72
+
73
+ }
74
+
75
+ }
76
+
77
+
78
+
79
+ public class B : Sample
80
+
81
+ {
82
+
83
+ protected override void Action()
84
+
85
+ {
86
+
87
+ // B...
88
+
89
+ }
90
+
91
+ }
92
+
93
+
94
+
95
+ public class C : Sample
96
+
97
+ { ... }
98
+
99
+ ```