Heim > Java > javaLernprogramm > Was ist der Unterschied zwischen statischen und nichtstatischen Methoden in Java?

Was ist der Unterschied zwischen statischen und nichtstatischen Methoden in Java?

Patricia Arquette
Freigeben: 2024-12-21 03:49:13
Original
874 Leute haben es durchsucht

What's the Difference Between Static and Non-Static Methods in Java?

Kontrast zwischen statischen und nichtstatischen Methoden in Java

In Java werden Methoden grob in zwei Typen eingeteilt: statisch und nicht statisch (Instanz-)Methoden. Das Verständnis der Unterscheidung zwischen diesen ist für eine effektive Programmierung von entscheidender Bedeutung.

Statische Methoden

Eine statische Methode ist einer Klasse zugeordnet und nicht einer bestimmten Instanz dieser Klasse. Es kann mit dem Klassennamen selbst aufgerufen werden, ohne ein Objekt zu instanziieren. Statische Methoden dienen dazu, Aktionen auszuführen, die unabhängig vom Zustand einzelner Objekte sind.

Im Beispiel in Code 1 wird die Methode add() als statisch deklariert. Es akzeptiert einfach zwei ganze Zahlen und gibt deren Summe zurück. Da es nicht auf instanzspezifischen Informationen angewiesen ist, kann es mit A.add() ausgeführt werden, ohne ein B-Objekt zu erstellen.

Nichtstatische Methoden

Im Gegensatz dazu ist eine nicht statische Methode an ein aus ihrer Klasse erstelltes Objekt gebunden. Um diese Methode aufzurufen, muss eine Instanz der Klasse erstellt werden. Nicht statische Methoden arbeiten normalerweise mit instanzspezifischen Daten oder führen Aktionen aus, die vom Zustand des Objekts abhängen.

In Code 2 wurde das statische Schlüsselwort der add()-Methode entfernt. Jetzt wird die i-Instanzvariable der A-Klasse bearbeitet. Um diese Methode aufzurufen, muss eine Instanz von A erstellt werden, wie in der main()-Methode gezeigt.

Hauptunterschiede

Der Hauptunterschied zwischen statischen und nicht- Statische Methoden liegen in ihrer Assoziation mit Objekten. Auf statische Methoden kann über die Klasse selbst zugegriffen werden, während nicht statische Methoden eine Objektinstanziierung erfordern. Darüber hinaus können statische Methoden nicht mit Daten auf Instanzebene arbeiten, wohingegen nicht statische Methoden dies können.

Kurz gesagt werden statische Methoden bevorzugt, wenn die Operation unabhängig von einzelnen Objektzuständen ist, während nicht statische Methoden verwendet werden, wenn Die Operation umfasst instanzspezifische Daten oder Verhalten. Wenn Sie diesen Unterschied verstehen, können Sie die OOP-Prinzipien effektiv in Ihrem Java-Code nutzen.

Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen statischen und nichtstatischen Methoden in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage