teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

削除します

2016/09/29 15:07

投稿

退会済みユーザー
answer CHANGED
@@ -1,9 +1,1 @@
1
- 結論としては、歴史的背景があるものと理解していただければと思います。
1
+           
2
-
3
- 今となっては、Javaにプリミティブ型があるのは、Java言語の仕様として失敗なのではないかという見方があります。つまり、たとえば、int型(プリミティブ型)を用意せず、Integer型(参照型)だけ用意すればよかったのだという意見です。
4
-
5
- しかし、プリミティブ型はJava誕生当時から存在していました。当時はマシンパワーが弱い、Java仮想マシンが発展途上という関係で、プリミティブ型は参照型よりも高速に処理できるメリットがありました。また、言語仕様の関係で、プリミティブ型についても「int.class」というふうにClassクラスで表現できることが必要でした。
6
-
7
- 今や、マシンパワーもJava仮想マシンも強化され、参照型を使ってもさほど性能に影響を与えないレベルになりました。
8
-
9
- とはいえ、Javaは全世界の多くのマシンで実行されているため、後方互換性を保証する必要があります。今さらJava言語仕様を変更するわけには行きませんから、現在もプリミティブ型が残っていると理解して差し支えないと思います。