回答編集履歴

2

追記0

2021/04/02 07:45

投稿

BeatStar
BeatStar

スコア4962

test CHANGED
@@ -41,3 +41,73 @@
41
41
 
42
42
 
43
43
  ではないです。
44
+
45
+
46
+
47
+ ----
48
+
49
+
50
+
51
+ [追記0]
52
+
53
+
54
+
55
+ あと、今回の質問にあるコードはprotected -> privateになっていますが、
56
+
57
+ publicの打ち間違いだとします。
58
+
59
+
60
+
61
+ そうすると、
62
+
63
+
64
+
65
+ 私がサンプルを組むなら、
66
+
67
+
68
+
69
+ ```C#
70
+
71
+ // Mainメソッド内だとして
72
+
73
+ Dog pochi = new Dog();
74
+
75
+ pochi.Voice(); // -> 『ワン』
76
+
77
+ Cat tama = new Cat();
78
+
79
+ tama.Voice(); // -> 『にゃー』
80
+
81
+ ```
82
+
83
+
84
+
85
+ ではなく、
86
+
87
+
88
+
89
+ ```C#
90
+
91
+ // Mainメソッド内だとして
92
+
93
+ Animal pochi = new Dog(); // ← 子でnewして親で保持
94
+
95
+ pochi.Voice(); // -> 『ワン』
96
+
97
+ Animal tama = new Cat(); // ← 子でnewして親で保持
98
+
99
+ tama.Voice(); // -> 『にゃー』
100
+
101
+ ```
102
+
103
+
104
+
105
+ のようにします。
106
+
107
+
108
+
109
+ そうすると、オーバーライドをする意味が出てきます。(ポリモーフィズムを表現するためのものだから)
110
+
111
+
112
+
113
+ もちろん、状況によりますが。

1

なぜか見切れていたものを修正

2021/04/02 07:45

投稿

BeatStar
BeatStar

スコア4962

test CHANGED
@@ -36,4 +36,8 @@
36
36
 
37
37
 
38
38
 
39
+ クラスがある -> オブジェクト指向だ!!
40
+
41
+
42
+
39
- クラスがある
43
+ ではないです。