回答編集履歴

1

書き足し

2016/12/15 16:13

投稿

swordone
swordone

スコア20651

test CHANGED
@@ -3,3 +3,31 @@
3
3
  5.そもそもメンバに対して継承という言葉を使うこと自体誤り
4
4
 
5
5
  だと思います。
6
+
7
+
8
+
9
+ そもそも継承とは、クラスの機能を引き継ぐために行うもので、親クラスのメンバはその結果としてついてきただけです。1~3の「継承」を「機能を持つ」などと読み替えれば、先述の通り継承したクラスは親クラスのメンバを持つため、
10
+
11
+ > 2.不可視のメンバーとして継承される
12
+
13
+ > 3.継承される
14
+
15
+
16
+
17
+ という答えになるでしょう。事実として機能を引き継いでいるわけですからね。しかし、継承したクラスからは親クラスのprivateメンバは見ることができないため、使いようがありません。そのため外見上、
18
+
19
+ > 1.継承されない
20
+
21
+
22
+
23
+ とみなすこともできるわけです。この通り厳密に解釈しようとすると厄介なので、
24
+
25
+ > 4.private は少し特殊(という煮え切らない書き方)
26
+
27
+
28
+
29
+ と書くところも存在するのでしょう。
30
+
31
+
32
+
33
+ しかしながら、機能を引き継いでいたとしても使えないのなら無いのと同じです。そのくらいの解釈で実用上は全く問題ないと思います。