ホームページ >Java >&#&ベース >Javaの静的とは何ですか?どのように理解すればよいでしょうか?

Javaの静的とは何ですか?どのように理解すればよいでしょうか?

王林
王林オリジナル
2019-11-12 16:34:095838ブラウズ

Javaの静的とは何ですか?どのように理解すればよいでしょうか?

Java 言語では、static は「静的」を意味します。使用シナリオはメンバー変数やメンバー メソッドの変更に使用でき、もちろん静的コード ブロックにすることもできます。 static の主な機能は、特定のオブジェクトから独立したドメイン変数またはメソッドを作成することです。

形式:

変更後の変数: static データ型の変数名

変更後のメソッド: [アクセス権修飾子] static メソッドの戻り値メソッド名 ( パラメーターlist)

機能:

1. static は変数とメソッドを変更できます;

2. static によって変更された変数またはメソッドは Any オブジェクトから独立していますつまり、これらの変数とメソッドはどのインスタンス オブジェクトにも属していませんが、クラスのインスタンス オブジェクトによって共有されています;

3. クラスがロードされるとき、それはロードされます。 static によって変更された部分;

4. static によって変更された変数またはメソッドはオブジェクトより優先されます。つまり、クラスがロードされた後は、オブジェクトが作成されていなくてもアクセスできます。

静的変数とインスタンス変数の違い:

インスタンス変数: オブジェクトが作成されるたびに、各オブジェクトにメンバー変数のメモリ領域が割り当てられます。オブジェクトの場合、オブジェクトが作成されるたびにメモリ内に複数のメンバー変数が存在します。

静的変数: 静的変数はどのインスタンス オブジェクトにも属しませんが、クラスに属しているため、メモリ内にはコピーが 1 つだけ存在します。クラスのロード プロセス中に、JVM はメモリ スペースを 1 回だけ割り当てます。静的変数。

アプリケーション シナリオ:

メンバー変数がすべてのオブジェクトで共有される場合、このメンバー変数は静的変数として定義する必要があります。

注:

1. static メソッドには this キーワードはありません。これは、static メソッドはクラスのロードとともにロードされ、this はオブジェクトとともにロードされるためです。 . 存在するために創造されました。静的オブジェクトはオブジェクトより優先されます。

2. 静的は静的にアクセスできますが、静的は非静的にアクセスできません。

3. 非静的ものは静的ものにアクセスできます。

推奨チュートリアル: Java チュートリアル

以上がJavaの静的とは何ですか?どのように理解すればよいでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。