オブジェクトの宣言に関する混乱

私はCoreJavaの本でコレクションを学習していて、私はこのコードを見つけました:

      List a = new LinkedList();

今私はなぜこのコードがこのようなものではないのだろうかと思います。

LinkedList a = new LinkedList();

a をListとして宣言する理由は何ですか?

ベストアンサー

List is the interface, LinkedList is a specific implementation
of the interface. “Program to an ‘interface’, not an
‘implementation’: http://en.wikipedia.org/wiki/Design_Patterns#Introduction.2C_Chapter_1

コメントする

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です