Klassenmethoden in Java | Erklärt

Klassenmethoden in Java | Erklärt
In Java ist eine Methode nichts anderes als ein Code/Anweisungsblock, der in der Klasse deklariert wird und verschiedene Aktionen ausführen kann, wenn jemand es nennt. Einige Methoden können direkt mit ihrem Namen aufgerufen werden (ich.e. ohne das Klassenobjekt), während einige Methoden Instanz/Objekt der Klasse erfordern (i.e. muss mit dem Objekt der Klasse aufgerufen werden).

Die Methoden, die direkt aufgerufen werden können Klassen- oder statische Methoden, Während die Methoden, die ein Objekt der Klasse benötigen, um aufzurufen Instanz oder nicht statische Methoden.

In diesem Artikel wird ein detaillierter Überblick über Klassenmethoden enthalten. In dieser Hinsicht werden die folgenden Aspekte der Java-Klassenmethoden behandelt:

  • Was ist eine Klassenmethode
  • So greifen Sie auf Klassenmethoden zu
  • Wie man auf öffentliche Methoden zugreift
  • So greifen Sie aus einer anderen Klasse auf eine Methode zu

Lass uns anfangen!

Klassenmethode in Java

Wenn wir eine Klasse haben, müssen wir im Allgemeinen ein Objekt dieser Klasse erstellen, um auf seine Methoden und andere Mitglieder zuzugreifen. Auf die Klassen-/statische Methoden kann jedoch innerhalb der Klasse zugegriffen werden, ohne eine Instanz dieser Klasse zu erstellen.

So greifen Sie auf Klassenmethoden zu

Betrachten wir das untergewandte Beispiel, um zu verstehen, wie man in Java auf eine statische/klassen-.

Beispiel

Das folgende Code -Snippet enthält zwei Zahlen vom Benutzer und führt dazu hinzu:

öffentliche Klasse addnumbers
public static int addition (int num1, int num2)
int add = num1 + num2;
Rückgabe hinzufügen;

public static void main (String [] args)
int nummer1, number2, sum;
Scanner Scan = neuer Scanner (System.In);
System.aus.print ("1. Nummer eingeben:");
Nummer1 = Scan.NextInt ();
System.aus.print ("2. Nummer eingeben:");
Nummer2 = Scan.NextInt ();
sum = addition (number1, number2);
System.aus.println ("sum =" + sum);

Der vollständige Code und seine jeweilige Ausgabe sind ungefähr so:

Aus der obigen Ausgabe ist klar, dass es nicht erforderlich ist, das Objekt der Klasse zu erstellen, um eine statische Methode aufzurufen, sondern kann direkt innerhalb der Klasse zugegriffen werden.

Wie man auf öffentliche Methoden zugreift

Betrachten wir nun das folgende Beispiel, um zu testen, ob auf eine öffentliche Methode direkt zugegriffen werden kann oder nicht:

öffentliche Klasse addnumbers
public int addition (int num1, int num2)
int add = num1 + num2;
Rückgabe hinzufügen;

public static void main (String [] args)
int nummer1, number2, sum;
Scanner Scan = neuer Scanner (System.In);
System.aus.print ("1. Nummer eingeben:");
Nummer1 = Scan.NextInt ();
System.aus.print ("2. Nummer eingeben:");
Nummer2 = Scan.NextInt ();
sum = addition (number1, number2);
System.aus.println ("sum =" + sum);

Der gesamte Code ist der gleiche wie im vorherigen Beispiel mit Ausnahme des Zugriffsmodifikators. Dieses Mal erhalten wir jedoch einen Fehler, wie im folgenden Code -Snippet gezeigt:

Um auf eine nicht statische Funktion zuzugreifen, müssen wir zunächst das Objekt der Klasse erstellen, dann können wir auf die Methode der Klasse zugreifen:

Der obige Snippet überprüft, dass wenn wir die nicht statische Methode mit Hilfe eines Klassenobjekts aufrufen, dann angemessen funktioniert und die fehlerfreie Ausgabe liefert.

So greifen Sie aus einer anderen Klasse auf eine Methode zu

Wir haben gesehen? Wird die statische Methode direkt in einem solchen Fall aufgerufen?? Lassen Sie uns damit experimentieren!

Beispiel

Bedenken Sie, dass wir zwei Klasse haben: eine Klasse namens “Addnumbers"Die die Hauptmethode und die zweite halten" ist "Myfunktionen" Klasse:

Myfunktionen.Java

Paket addnumbers;
öffentliche Klasse MyFunctions
public static int addition (int num1, int num2)
int add = num1 + num2;
Rückgabe hinzufügen;

Addnumbers.Java

öffentliche Klasse addnumbers
public static void main (String [] args)
int nummer1, number2, sum;
Scanner Scan = neuer Scanner (System.In);
System.aus.print ("1. Nummer eingeben:");
Nummer1 = Scan.NextInt ();
System.aus.print ("2. Nummer eingeben:");
Nummer2 = Scan.NextInt ();
sum = addition (number1, number2);
System.aus.println ("sum =" + sum);

Wir nennen das Zusatz Funktion der Myfunktionen Klasse aus der Hauptmethode von Addnumbers Klasse:

Obwohl die Additionsmethode statisch ist, aber wir bekommen trotzdem einen Fehler, wenn wir versuchen, direkt darauf zuzugreifen. Dies liegt daran, dass sich die Additionsmethode nicht in derselben Klasse befindet. Um auf die Methode einer anderen Klasse zuzugreifen, müssen wir das Objekt dieser Klasse unabhängig von ihrem Zugriffsmodifikator I erstellen.e. statisch oder öffentlich.

Addnumbers.Java

öffentliche Klasse addnumbers
public static void main (String [] args)
int nummer1, number2, sum;
Scanner Scan = neuer Scanner (System.In);
System.aus.print ("1. Nummer eingeben:");
Nummer1 = Scan.NextInt ();
System.aus.print ("2. Nummer eingeben:");
Nummer2 = Scan.NextInt ();
MyFunctions obj = neue myfunctions ();
sum = obj.Addition (Nummer1, Nummer2);
System.aus.println ("sum =" + sum);

Diesmal erstellen wir das Objekt von Myfunktionen Klasse in der Hauptfunktion von Addnumbers Klasse und dann greifen wir auf die zu Zusatz Methode mit Hilfe dieses Objekts:

Jetzt überprüft der obige Snippet, dass der Fehler verschwunden ist, und mit Hilfe des Objekts der MyFunctions -Klasse haben wir die gewünschten Ergebnisse erhalten.

Abschluss

Auf die Klasse/statische Methode kann innerhalb der Klasse direkt zugegriffen werden, während es nicht möglich ist. Während im Fall mehrerer Klassen die Methoden nur mit Hilfe von Klassenobjekten unabhängig von ihrem Zugriffsmodifikator zugänglich sind. Diese Beschreibung bietet einen umfassenden Leitfaden für die Klassenmethoden und wie Sie aus derselben Klasse und aus einer anderen Klasse auf sie zugreifen können.