回答編集履歴
1
文言微修正
test
CHANGED
@@ -3,7 +3,7 @@
|
|
3
3
|
これは,「隠蔽」の結果によって生じる効果のうちの1つでしかない…というか,
|
4
4
|
確かにフィールドをprivateにすれば外部から勝手に変更できなくなるわけですが,それは単なる結果でしかないというか…
|
5
5
|
|
6
|
-
「隠蔽」の目的とは,**そんなフィールドが存在するなんてこと自体をそもそも外部に公開しない(外部からは知り得ない
|
6
|
+
「隠蔽」の目的とは,**そんなフィールドが存在するなんてこと自体をそもそも外部に公開しない(外部からは知り得ないってことにする)こと** でしょうから,捉え方がちょっと違うんじゃないかなぁ,と.
|
7
7
|
|
8
8
|
例えば,何か複数個のデータに関して「データの平均値を返すよ」っていうメソッドを公開しているクラスがあるとして,
|
9
|
-
そのクラスが平均値っていうフィールドを持っていてそのメソッドは単にその値を返すのか,それともメソッドを呼ばれた際に都度平均値を計算して返すのか,その他なのか… っていう実装の詳細を外部に見せない(隠してやる)ことで, **クラスを使う側(このメソッドを呼ぶ側)がそういった具体的な実装形態に依存しないようにする** …ってのが「隠蔽」の目的なんじゃないかな.
|
9
|
+
そのクラスが平均値っていうフィールドを持っていてそのメソッドは単にその値を返すのか,それともメソッドを呼ばれた際に都度平均値を計算して返すのか,その他なのか… っていう実装の詳細を外部に見せない(隠してやる)ことで, **クラスを使う側(このメソッドを呼ぶ側)がそういった具体的な内部実装形態に依存しないようにする** …ってのが「隠蔽」の目的なんじゃないかな.
|