Skip to main content

静的方法とは何ですか?

classクラスで宣言されているが、そのクラスの特定のインスタンス化に依存しないオブジェクト指向のコンピュータープログラミング方法は、静的メソッドと呼ばれます。ほとんどのプログラミング言語には、メソッドを静的にするメソッドの宣言にキーワードが含まれています。これらの方法は、そのクラスからインスタンス化されたオブジェクトには含まれていないクラスに厳密に属します。それらは頻繁に

クラスの方法と呼ばれます。Javaでは、これらのメソッドを参照するためにオブジェクト名を使用することは許可されていますが、それは強く落胆しています。オブジェクト名を使用する場合、コードを読んでいる人は、これらのメソッドのいずれかをインスタンスメソッドと混同する場合があります。また、プログラマーがメソッドにアクセスする必要がある場合にも使用されますが、含まれているクラスをインスタンス化する必要はありません。ユーティリティクラスは通常、オブジェクトにインスタンス化されていません。ユーティリティ方法がオブジェクト情報を変更する必要があることは珍しいでしょう。pow()などのjava.lang.mathクラスのメソッドは、このタイプのメソッドがユーティリティクラスでどのように使用されるかの例です。、および静的方法。静的メソッドは、インスタンス変数とインスタンスメソッドに直接アクセスできません。インスタンスメソッドの性質が静的メソッドよりもクラスメンバーへのアクセスが優れているため、インスタンスメソッドは通常のクラスで通常使用されるメソッドのタイプです。親の静的法が最終的に宣言されていない限り、同じ子の静的方法は、まるで上書きされているかのように子クラスでコーディングできます。これは、静的メソッドをオーバーライドできないため、オーバーライドする代わりにハーディングと呼ばれます。オーバーライドされた子の静的法にオブジェクト名を使用してアクセスすると、オーバーライドされた子メソッドが使用されます。問題は、子オブジェクトが親としてアップキャストされるときに発生します。この場合、Upcast Child Static Methodへの呼び出しは、予想される子メソッドの代わりに親法を使用します。真の多型では、子どもの方法がアップキャスト後に活性化された方法です。