回答編集履歴

1

追記

2019/09/29 06:51

投稿

LouiS0616
LouiS0616

スコア35668

test CHANGED
@@ -33,3 +33,21 @@
33
33
  }
34
34
 
35
35
  ```
36
+
37
+
38
+
39
+ > 先生が「データ隠蔽を実現して,プログラムの品質を向上させるために, クラス内のフィールドは,原則として非公開(private)にしよう.」と言っていました.
40
+
41
+ Java初学者なのですが, それが非常に疑問です.
42
+
43
+
44
+
45
+ 一般論として正しいです。
46
+
47
+ フィールドは全てprivateにして、適宜アクセサを用意します。
48
+
49
+
50
+
51
+ ただ、jackal_さんの言うように本来隠蔽しなくて良いものを隠蔽しているのも事実です。
52
+
53
+ 私見ですが、Javaがプロパティを言語レベルでサポートしたら前段の一般論は崩れると思います。