クラスのオーバーライドされたclone()
メソッドはjava.lang.Object
、すべての配列で使用できます。
配列のこのメソッドはどこでオーバーライドされますか?
クラスのオーバーライドされたclone()
メソッドはjava.lang.Object
、すべての配列で使用できます。
配列のこのメソッドはどこでオーバーライドされますか?
JLS10.7で定義されています。
パブリックメソッドcloneは、クラスObjectの同じ名前のメソッドをオーバーライドし、チェックされた例外をスローしません。配列型T[]のcloneメソッドの戻り型はT[]です。
多次元配列のクローンは浅いです。つまり、新しい配列を1つだけ作成します。サブアレイは共有されます。
どこでどのようにオーバーライドされるかは、実装によって異なります。たとえば、HotSpotの場合は、539行目以降にあります。ドリルダウンすると、プラットフォームに依存するメソッドを呼び出すことがわかります。たとえば、Windows-x86の場合、pd_conjoint_jlongs_atomic
メソッドはここの97行目にあり、アセンブリコードを使用します。