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

回答編集履歴

2

文言修正

2016/06/02 03:27

投稿

catsforepaw
catsforepaw

スコア5944

answer CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  使えるリソースが一つだけの場合、それにアクセスするクラスインスタンスも一つだけの方が都合が良い場合が多いからです。
4
4
 
5
- 例えば、画面に何か出力するとき、Javaでは`System.out`を使いますが、それは「標準出力」というたった一つしかないリソースに対してアクセスを行うために、staticフィールドで定義されたインスタンスであり、staticなのでプロセス内には1個しかインスタンスがないことが保証され
5
+ 例えば、画面に何か出力するとき、Javaでは`System.out`を使いますが、それは「標準出力」というたった一つしかないリソースに対してアクセスを行うために、staticフィールドで定義されたインスタンスであり、staticなのでプロセス内には1個しかインスタンスがありせん
6
6
 
7
7
  なぜそうしているのかというと、画面に何か書きたいときに、いちいちnewしてクラスインスタンスを作るのは面倒だし、そのたびにnewしていたら無駄にメモリを食うし、それを避けるために一度newしたものを別のクラスでも使い回そうとすると、そのインスタンスの受け渡しをどうするのかという問題が出てくるし……。
8
8
  ということで、staticフィールドにインスタンスを作ってそれをみんなで使い回すことにするのです。

1

脱字修正

2016/06/02 03:26

投稿

catsforepaw
catsforepaw

スコア5944

answer CHANGED
@@ -1,6 +1,6 @@
1
1
  > インスタンスがなぜ一つじゃないといけないのか
2
2
 
3
- 使えるリソースが一つだけの場合、それにアクセスするクラスインスタンスも一つだけの方が都合が良い合が多いからです。
3
+ 使えるリソースが一つだけの場合、それにアクセスするクラスインスタンスも一つだけの方が都合が良い合が多いからです。
4
4
 
5
5
  例えば、画面に何か出力するとき、Javaでは`System.out`を使いますが、それは「標準出力」というたった一つしかないリソースに対してアクセスを行うために、staticフィールドで定義されたインスタンスであり、staticなのでプロセス内には1個しかインスタンスがないことが保証されます。
6
6