2017-04-07 10 views
-1

私はJavaチュートリアルを完了しましたが、の配列についての混乱は私の心の中にまだあります。Javaは内部的にArrayの実装を提供していますか?

アレイは内部でどのように動作しますかデータメンバlengthはどこから来るのか?

+7

[配列はJava内部でどのように動作するのですか?](http://stackoverflow.com/questions/26069704/how-array-works-internally-in-java) – Gooz

答えて

2

ない「メンバ関数」length()はありません(私たちは動的配列の長さを取得する必要がある場合、我々は通常array.lengthを使用します)。配列のサイズを示す(最終)プロパティーlengthがあります。配列はオブジェクトですが、主にネイティブ実装です。基本的には、境界チェックを指すポインタです。

配列の内部実装について心配する必要はありません。うまく動作します。

+0

答えKayamanに感謝します。あなたは「ネイティブ実装」と何を言っていますか?私が同僚のいずれかが聞いた「プロキシクラス」という用語と同じです。 –

+0

いいえ、配列を扱うJVMにはプラットフォーム依存のネイティブ実装があることを意味します。実際にどのように実装されているか気にする必要はありませんが、通常のJVMでは "スマートポインタ"となります。 – Kayaman

関連する問題