重い負荷、オーバーレイと隠すJavaの違いの分析

1 Star2 Stars3 Stars4 Stars5 Stars (まだ評価されていません)
Loading...

オーバーロードされました:同じ名前で、同じ名前の異なるパラメータを持つ複数の関数

注:1.異なるパラメーターの意味は、少なくとも1つの異なるパラメーター・タイプ、パラメーターの数、およびパラメーター・シーケンスがあることです。

戻り値と例外とアクセス修飾子は、匿名呼び出しのあいまいさのためにオーバーロードされた条件として使用することはできません。void a()とint a()、a()が呼び出されるとあいまいさが発生します)

3.mainメソッドもオーバーロードすることができます

オーバーライド:サブクラスは親クラスのメソッドをオーバーライドします。メソッド名とパラメータタイプが完全に同じである(パラメータはサブクラスではありません)、親クラス(つまり親クラスの子クラス)より小さいか等しい例外と戻り値、大きいか同じ親

2つの小さなもので2つ

注意:サブクラスインスタンスメソッドは親クラスの静的メソッドをオーバーライドできません。サブクラスの静的メソッドは親クラスのインスタンスメソッドをオーバーライドできず(コンパイルエラー)、メソッドはクロスオーバーできません。

非表示:親または子が同じ名前のプロパティまたはメソッドを持つ場合、その親クラスの同じ名前のプロパティまたはメソッドがありません。実際には存在します。

注意:隠し型が宣言されると、宣言されたクラスのクラスが呼び出され、対応するクラスのプロパティまたはメソッドが動的バインディングなしで呼び出されます。

メソッド隠蔽の形式は1つだけです。つまり、親クラスと子クラスに対して同じ静的メソッドが存在します。

属性は非表示にすることができ、上書きすることはできません

サブクラスのインスタンス変数/静的変数は、親クラスのインスタンス/静的変数を隠すことができ、変数としてまとめられて隠すことができます

隠れと覆いの違い:

隠されたプロパティは、サブクラスが親クラスにキャストされた後、親クラスのプロパティにアクセスします

サブクラスが親クラス、キャストされたメソッド、または子クラス自体にキャストされた後でオーバーライドされたメソッド

オーバーレイは動的にバインドされ、RTTI(ランタイムタイプ識別)の対象となるため、RTTIによって制約されず、RTTIは隠しオブジェクトではなくオーバーレイのためだけに要約されます。

特別な状況:

最終的な属性は非表示にすることはできますが、割り当てることはできません。つまり、オンラインで最終属性を変更することはできません。このステートメントは正確ではありません。他のオブジェクトを指しますが、独自の値を変更することができます、あなたはArrayListテストを使用することができます、最終的なプロパティは、実行時に初期化することができますが、

2.装飾方法は上書きすることはできません、オーバーロードすることができます

3.最終変更クラスは継承できません。

4.privateメソッドは暗黙的にfinalを追加します


1 Star2 Stars3 Stars4 Stars5 Stars (まだ評価されていません)
Loading...
      この投稿は審査処理中  | 元のサイトへ