2017-01-14 14 views
-1

方法ベクトル実装が同期されるとArrayListの実装がデータを取得し、保存する彼らの機能は同じであっても同期されていないことを、我々は証明することができます対?ベクトル(同期)のArrayList(非同期)

+4

javadocを読んでください。またはそのソースコード。 –

答えて

0

ソースコードとそのドキュメント(正しく書かれている場合)は、100%信頼できる唯一のソースです。そこに見つけられないもの、またはそこに書かれたものから派生しないもの(もしあれば前提に注意してください)は完全に信頼できません!いくつかの不動産をテストしても、その不動産が存在することを示すテストであっても、必ずしも結論が速くなるとは限りません。最初にコードまたはドキュメントを読み、そこから推論を試みてください。

Java APIのクラスの場合は、here(またはhere、同じソース、別のプレゼンテーション)のドキュメントを参照してください。この実装は同期化されていないことを

注:それは太字で書かれているArrayList classからドキュメントで

これは、同期されていないことを確認できます。 Vector classのドキュメントページで

は、紹介文の最後の段落で、最後の文章は以下のとおりです。

ベクトルが同期される新しいコレクションの実装とは異なり。スレッドセーフな実装が必要ない場合は、Vectorの代わりにArrayListを使用することをお勧めします。

これで同期がとれることがわかります。同期化されたコンテナが必要ない場合は、使用しないことをお勧めします。