回答編集履歴

2

追記

2016/11/16 06:07

投稿

ishi9
ishi9

スコア1294

test CHANGED
@@ -17,3 +17,11 @@
17
17
  個人的には正直、あまり使わないというか使うとややこしくなるから使って欲しくない機能です。
18
18
 
19
19
 
20
+
21
+ 追記:
22
+
23
+ すいません、肝心のもう一つの質問に答えていませんでした。
24
+
25
+ 結論からいうと同じです。違いは警告が出るかどうかというだけです。
26
+
27
+

1

修正

2016/11/16 06:07

投稿

ishi9
ishi9

スコア1294

test CHANGED
@@ -2,8 +2,18 @@
2
2
 
3
3
  クラスの継承の話です。
4
4
 
5
- 一言で言うならoverrideの逆とでも認識しておけばOKです。
6
5
 
7
- 正直、あまり使わないというか使うとややこしくなるから使うなというか(個人的な感想です)
8
6
 
9
- れ以は参考URLを見ください。
7
+ 親と同じ名前の変数や関数を定義すると、の部分を書きししまます
8
+
9
+ 意図してやっているのならいいのですが、親がどんな変数や関数を持っているかをいちいち調べるのは面倒でうっかり同じ名前のものを定義してしまう事があります。
10
+
11
+ うっかりの場合、変な挙動になる可能性があるのでコンパイラが警告を出してくれますが、わざとやっている場合はこれがうざったくなります。
12
+
13
+ ですので、この警告を消すために必要なのがnew 修飾子です。これを入れると警告がでなくなります。
14
+
15
+
16
+
17
+ 個人的には正直、あまり使わないというか使うとややこしくなるから使って欲しくない機能です。
18
+
19
+