すべてのカテゴリ » インターネット・パソコン » 技術・プログラミング

質問

終了

Javaでオブジェクトを作る時はnewしますが、どうしてCalendarクラスはnewできないのでしょうか?

===補足===
知りたいのは、どうしてnewできない作りにしてあるのかってことです。

  • 質問者:もものき
  • 質問日時:2009-08-30 20:59:26
  • 0

Calendarクラスの主な利用目的は、システム日付の取得です。
システム日付はアプリケーションやシステムで常に一意に決まります。
一意に決まるわけですから、どこで呼び出しても常に同じものが取得できる必要があります。

コンストラクタ(new)による生成方法をとると、毎回違うインスタンスが取得されてしまいます。
そこでgetInstance()で常に同一インスタンスが取得できる様にしています。

  • 回答者:ほろろ (質問から22時間後)
  • 0
この回答の満足度
  
とても参考になり、非常に満足しました。回答ありがとうございました。

並び替え:

Calendarクラスが抽象クラスのため、直接newできません。
抽象クラスは、オブジェクトの生成ができないからです。

<参考>
匿名さんの回答にかぶりますが、Calendarクラスは、Calendarクラスで用意されたファクトリメソッド(getgetInstance)で、オブジェクトの生成をします。

  • 回答者:コゼニゲバ (質問から4時間後)
  • 0
この回答の満足度
  

関連する質問・相談

Sooda!からのお知らせ

一覧を見る