クラス変数:
インスタンス変数:
クラスオブジェクトは、状態値を格納するために使用されます。修飾子は、パブリックまたはプライベートです。クラス全体の使用は、クラス内のメソッドのいずれかで呼び出すことができます。インスタンス変数は、そのオブジェクトの存在に基づいて、同時にオブジェクトを作成し、プログラムを実行し、そのインスタンス変数を作成され、プログラムの実行が完了すると、オブジェクトが消え、そのインスタンス変数が消えてしまいました。
例えば:
パブリッククラスPerson
{
公共の文字列名。
公共char型性別;
公共ダブル高さ;
.......
}
静的変数(クラス変数):
修飾子静的変数で修飾しました。静的変数は、それは、クラスの特定のオブジェクトインスタンスに属していない、クラス変数です。これは、オブジェクト・インスタンスのメモリ空間に保存され、メモリユニットクラスのパブリック記憶空間に記憶されていません。
例如:静的文字列の言語=「中国」。
違い:
改質剤として、パブリック/プライベート一般的に使用される変数の例。各クラスのオブジェクトは、クラス定義でのインスタンス変数の独自のセットを持っています。各オブジェクトは他のオブジェクトのインスタンス変数には影響しません、変更したり、自分自身のインスタンス変数とロシアにアクセスすることができます。
静的変数static修飾子。各クラスのすべてのオブジェクトは、クラスの静的変数の共通セットを持っています。クラスとそのオブジェクトは変更または静的変数にアクセスすることができます。
最後の変数:
修飾子最終的に修正される変数を使用しました。その保存されたデータは、プログラムの実行を通じて変化しません。通常、静的と相まって、この変数の実際の意味は、最終の前で一定です。
例えば:静的最終ダブルPI = 3.1415926。
volatile変数:
volatile修飾子が変更されました。説明変数も制御され、すなわち、変数は、現在のプログラムによって把持されていないいくつかのスレッドが、変更されてもよいが、影響し、変数の値を変更する操作中に動作する他の未知のプログラムが存在してもよいです。
クラスのメソッド:
方法の例:
各オブジェクトに属する方法の例としては、オブジェクトクラスによって呼び出すことができます。方法としては、必要に応じてpublicを使用し、クラス外部からアクセスすることができ、所望のインスタンスメソッドの場合にのみ私的使用、クラス内でアクセスされます。
静的メソッド:
静的メソッドは、メモリ空間の内容が割り当て及びローディングの型宣言に応じて変化すること静的修飾は、クラスに属する、任意の単一のオブジェクトされていない使用します。静的メソッドは、取り扱い、およびインスタンス変数に属するオブジェクトを操作するが、唯一の全体のプロセスは、静的クラス変数、すなわち、静的変数またはメソッドがまだ静的メソッドを呼び出すハンドルであることはできません。静的メソッドは、インスタンス変数にアクセスすることはできませんので、あなたは、静的メソッドでキーワードに、これを使用することはできません。
これをキーワード:
クラスメソッドのオブジェクト・インスタンスがインスタンス点が呼び出したときにアクションが必要です。これは、とのケースでなければなりません。
1、ローカル変数と同じ名前のインスタンス変数。優先パラメータとローカル変数が高いため、パラメータ名またはローカル変数名と同じ名前のインスタンス変数に(これの最も一般的な用途は、コンストラクタとインスタンスメソッドクラスのローカル変数と同じ名前のインスタンス変数の問題を解決することを目的とします)この方法では、本体は、同じ名前のローカル変数またはパラメータ名の隠された名前のインスタンス変数です。区別することができ、この領域を使用します。
2、コンストラクタのメソッドを呼び出す他の構成。コンストラクタの最初の文にキーワードに、これを使用して、同じクラス内の別のコンストラクタを呼び出します。
フォーマット:この(パラメータリスト);注意:修飾子静的静的変数によって変更は、この呼び出しを使用することはできません。
パブリッククラスPerson { プライベート文字列名; プライベートchar型性別; プライベートダブル高さ; 公共人(文字列名、文字性別) { この(名前、性別、1.65)。 } 公共人(文字列名、チャー性別、二重高さ) { this.name =名。 this.genderは性別を=。 this.height =高さ; } }
キーワードスーパー:
これは、スーパーの親を指します。継承とクラスの応用。次のように一般的な方法は以下のとおりです。
1、親クラスのコンストラクタへのアクセス。コンストラクタサブクラスでは、スーパーを使用すると、スーパークラスのコンストラクタを呼び出すことができます。文の本体を単純化し、使用コンストラクタのパラメータ冗長親クラスのコンストラクタサブクラスのコンストラクタのための一般的なパラメータを設定します。コンストラクタは、最初のステートメントでなければなりません。
フォーマット:スーパー(パラメータリスト);
2、親クラスの変数やメソッドにアクセスします。親クラスのインスタンス変数やインスタンスメソッドと同じ名前のサブクラスのインスタンス変数やインスタンスメソッドに直面したとき、それは親クラスのサブクラスによって非表示になります。あなたが親クラスにインスタンス変数やインスタンスメソッドを使用したい場合は、この時間は、あなたは、superキーワードを必要としています。
注意:スーパーは、静的な環境で使用することはできません。
クラスの継承:
子クラスまたは派生クラスと呼ばれる継承した後、生成クラスは、サブクラスは親クラスの状態と振る舞いを継承するだけでなく、親クラスの状態や親クラスのヘビーデューティーの動作を変更し、新しい状態や動作を追加することができます。Javaでは、すべてのクラスは、クラスが複数のサブカテゴリーを持つことができる、唯一の親クラスを持つことができます。サブクラスは、プライベートインスタンス変数とインスタンスメソッドへの親クラスへのアクセスを継承することはできません。
ポリモーフィッククラス:
多型は、異なる方法で同じ名前のプログラムが共存する場合を指します。多型は、方法によって達成親クラス・カバレッジのサブクラスは、同じクラス内の同じ名前の宣言をオーバーロード異なる方法の方法で利用することができることができます。
この方法は、親クラス名と同じパラメータを使用して、サブクラスをカバーするために宣言された場合。親クラスの上書きしながら、プログラムの実行、実行方法サブクラス、中に。
オリジナルます。https://blog.csdn.net/ast_224/article/details/88336585