logo

Jak volat metodu v Javě

v Jáva , metoda je sbírka příkazů, která provádí konkrétní úkol nebo operaci. Je široce používán, protože poskytuje znovupoužitelnost kódových prostředků, které se zapíší jednou a použijí je mnohokrát. Poskytuje také snadnou modifikaci. Každý metoda má své jméno, pod kterým je volal . Když kompilátor přečte název metody, metoda se zavolá a provede zadaný úkol. V této části se naučíme jak volat předdefinované, uživatelem definované, statické, a abstraktní metody v Javě .

Volání statické metody v Javě

v Jáva , statická metoda je metoda, která je vyvolána nebo volána bez vytvoření objektu třídy, ve které je metoda definována. Všechny metody, které mají před názvem metody statické klíčové slovo, jsou známé jako statické metody . Můžeme také vytvořit statickou metodu pomocí statický klíčové slovo před názvem metody. Můžeme zavolat statickou metodu pomocí ClassName.methodName .

Nejlepším příkladem statické metody je hlavní() metoda. Volá se bez vytvoření objektu.

Java programování prvočísel

V následujícím programu jsme zavolali statickou metodu třídy Math s názvem min(), která vrací minimální hodnotu dvou čísel.

StaticMethodCallExample.java

 import java.util.*; public class StaticMethodCallExample { public static void main(String args[]) { int a; //calling static method of the Math class a=Math.min(23,98); System.out.println('Minimum number is: ' + a); } } 

Výstup:

 Minimum number is 23 

Volání předdefinované metody v Javě

V Javě jsou předdefinované metody metody, které jsou již definovány ve třídách. Když požadujeme jakoukoli předdefinovanou metodu, zavoláme metodu jejím jménem.

V následujícím příkladu jsme použili metodu s názvem hashCode() třídy Objekt . Volání předdefinované metody hashCode() , vytvořili jsme objekt obj třídy Object, protože je to metoda třídy Object. Pomocí objektu, který jsme nazvali hashCode() metoda, která vrací a hash kód hodnotu pro objekt.

PredefinedMethodCallExample.java

 public class PredefinedMethodCallExample { public static void main(String[] args) { int a; Object obj=new Object(); a=obj.hashCode(); System.out.println('Hash Code of the object is: '+a); } } 

Výstup:

 Hash Code of the object is: 2036368507 

Volání User-Defined Method v Javě

Chcete-li zavolat uživatelem definovanou metodu, nejprve metodu vytvoříme a poté ji zavoláme. Ve třídě musí být vytvořena metoda s názvem metody následovaným závorkami (). Definice metody se skládá z hlavičky metody a těla metody.

Metodu můžeme zavolat pomocí následujícího:

 method_name(); //non static method calling 

Pokud je metoda statická, použijeme následující:

 obj.method_name(); //static method calling 

Kde obj je objekt třídy.

V následujícím příkladu jsme vytvořili dvě uživatelsky definované metody pojmenované showMessage() a displayMessage() . The showMessage() metoda je statická metoda a displayMessage() metoda je nestatická metoda.

Všimněte si, že jsme volali showMessage() metodu přímo, bez použití objektu. Zatímco displayMessage() metoda se volá pomocí objektu třídy.

MethodCallExample.java

java lambda
 public class MethodCallExample { //user-defined static method static void showMessage() { System.out.println('The static method invoked.'); } //user-defined non-static method void displayMessage() { System.out.println('Non-static method invoked.'); } public static void main(String[] args) { //calling static method without using the object showMessage(); //called method //creating an object of the class MethodCallExample me=new MethodCallExample(); //calling non-static method me.displayMessage(); //called method } } 

Výstup:

 The static method invoked. Non-static method invoked. 

Třída může obsahovat dvě nebo více metod se stejným názvem. Nyní vyvstává otázka, jak můžeme volat dvě metody se stejným názvem.

Když má třída dvě nebo více metod se stejným názvem, je odlišena jednou z nich návratový typ nebo typy parametrů nebo počet parametrů . Tento koncept se nazývá přetížení metody . Například:

 int sum(int x, int y); double sum(double x, double y); 

Výše uvedené dvě metody mají stejný název součet() ale obojí je jiné. První metoda sum() vrací hodnotu int a analyzuje dvě celá čísla x a y jako parametry. Zatímco druhá metoda sum() vrací dvojitou hodnotu a analyzuje dvě dvojité hodnoty a a y jako parametry.

Vytvořme program, který přetíží sub() metoda.

MethodOverloadingExample.java

 public class MethodOverloadingExample { static int sub(int x, int y) { return x - y; } static double sub(double x, double y) { return x - y; } public static void main(String[] args) { int a = sub(45, 23); double b = sub(23.67,10.5); System.out.println('subtraction of integer values: ' +a); System.out.println('subtraction of double values: ' +b); } } 

Výstup:

 subtraction of integer values: 22 subtraction of double values: 13.170000000000002 

Volání abstraktní metody v Javě

Abstraktní metoda je metoda, která je deklarována pomocí a abstraktní klíčové slovo. Abstraktní metoda má pouze deklaraci metody. Tělo abstraktní metody definované v jiné třídě. abstraktní metoda musí být deklarována v abstraktní třída . Viditelnost abstraktních metod můžeme nastavit jako soukromé nebo veřejné. Abstraktní metodu nemůžeme prohlásit za konečnou, protože porušuje výhodu abstraktní metody.

Vlastní implementace abstraktní metody musí být ve třídě dítěte. Abstraktní metodu můžeme definovat takto:

převést řetězec na char
 abstract public void findArea(); 

Vytvořme si příklad volání abstraktní metody.

V následujícím příkladu jsme vytvořili třídu s názvem Abstraktní příklad a prohlásit jej za abstraktní. V této třídě jsme deklarovali abstraktní metodu pojmenovanou ukázat() . Poté jsme vytvořili další třídu s názvem AbstractMethodCalling která rozšiřuje Abstraktní příklad třída. V této třídě jsme implementovali abstraktní metodu.

Pro volání abstraktní metody show() jsme vytvořili instanci nadřazené třídy a vyvolali abstraktní metodu.

AbstractMethodCalling.java

 //abstract class abstract class AbstractMethodExample { //abstract method declaration abstract void show(); } public class AbstractMethodCalling extends AbstractMethodExample { //abstract method implementation void show() { System.out.println('The abstract method called.'); } public static void main(String args[]) { AbstractMethodExample obj = new AbstractMethodCalling(); //calling abstract method obj.show(); } } 

Výstup:

 The abstract method called.