logo

Kaip iškviesti metodą Java

Į Java , metodas yra teiginių rinkinys, kuris atlieka konkrečią užduotį arba operaciją. Jis plačiai naudojamas, nes suteikia galimybę pakartotinai naudoti kodą, kuris rašo vieną kartą ir naudoja jį daug kartų. Tai taip pat suteikia lengvą modifikavimą. Kiekvienas metodas turi savo pavadinimą, kuriuo jis yra paskambino . Kai kompiliatorius nuskaito metodo pavadinimą, metodas iškviečiamas ir atlieka nurodytą užduotį. Šiame skyriuje mes išmoksime kaip skambinti iš anksto apibrėžtu, vartotojo apibrėžtu, statiniu, ir abstrakčiai metodai Java .

Statinio metodo iškvietimas Java

Į Java , statinis metodas yra metodas, kuris iškviečiamas arba iškviečiamas nesukūrus klasės, kurioje metodas yra apibrėžtas, objekto. Visi metodai, kurie turi statinį raktinį žodį prieš metodo pavadinimą, yra žinomi kaip statiniai metodai . Taip pat galime sukurti statinį metodą naudodami statinis raktinis žodis prieš metodo pavadinimą. Statinį metodą galime iškviesti naudodami ClassName.methodName .

Geriausias statinio metodo pavyzdys yra pagrindinis () metodas. Jis vadinamas nesukūrus objekto.

skyriklis java

Šioje programoje mes iškvietėme statinį matematikos klasės metodą, pavadintą min (), kuris grąžina mažiausią dviejų skaičių reikšmę.

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); } } 

Išvestis:

 Minimum number is 23 

Iš anksto nustatyto metodo iškvietimas Java

Java programoje iš anksto nustatyti metodai yra metodai, kurie jau yra apibrėžti klasėse. Kai mums reikėjo bet kokio iš anksto nustatyto metodo, mes tiesiog vadiname metodą jo pavadinimu.

Šiame pavyzdyje mes panaudojome metodą pavadinimu maišos kodas () klasės Objektas . Norėdami iškviesti iš anksto nustatytą metodą maišos kodas () , sukūrėme objektą obj Object klasės, nes tai yra Object klasės metodas. Naudodami objektą, kurį pavadinome maišos kodas () metodas, kuris grąžina a maišos kodas objekto vertę.

Iš anksto nustatytas metodasCallExample.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); } } 

Išvestis:

 Hash Code of the object is: 2036368507 

Skambinimas vartotojo apibrėžtu metodu Java

Norėdami iškviesti vartotojo nustatytą metodą, pirmiausia sukuriame metodą ir tada jį iškviečiame. Klasėje turi būti sukurtas metodas su metodo pavadinimu ir skliausteliais (). Metodo apibrėžimą sudaro metodo antraštė ir metodo turinys.

Mes galime iškviesti metodą naudodami šiuos veiksmus:

java konstantos
 method_name(); //non static method calling 

Jei metodas yra statinis, naudojame šiuos metodus:

 obj.method_name(); //static method calling 

Kur obj yra klasės objektas.

Šiame pavyzdyje sukūrėme du vartotojo apibrėžtus metodus, pavadintus showMessage() ir displayMessage() . The showMessage() metodas yra statinis metodas ir displayMessage() metodas yra nestatinis metodas.

Atkreipkite dėmesį, kad mes paskambinome rodyti pranešimą () metodas tiesiogiai, nenaudojant objekto. Kol displayMessage() metodas iškviečiamas naudojant klasės objektą.

MethodCallExample.java

 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 } } 

Išvestis:

 The static method invoked. Non-static method invoked. 

Klasėje gali būti du ar daugiau metodų tuo pačiu pavadinimu. Dabar kyla klausimas, kaip galime pavadinti du metodus tuo pačiu pavadinimu.

Kai klasėje yra du ar daugiau metodų tuo pačiu pavadinimu, ji skiriasi vienu iš jų grąžinimo tipas arba parametrų tipai arba parametrų skaičius . Ši sąvoka vadinama metodo perkrova . Pavyzdžiui:

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

Pirmiau minėti metodai turi tą patį pavadinimą suma() bet abu skirtingi. Pirmasis sum() metodas grąžina int reikšmę ir analizuoja du sveikuosius skaičius x ir y kaip parametrus. Antrasis sum() metodas grąžina dvigubą reikšmę ir kaip parametrus analizuoja dvi dvigubas reikšmes a ir y.

Sukurkime programą, kuri perkrauna sub() metodas.

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); } } 

Išvestis:

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

Abstraktaus metodo iškvietimas Java

Abstraktus metodas yra metodas, kuris deklaruojamas su abstrakčiai raktažodį. Abstraktus metodas turi tik metodo deklaraciją. Kitoje klasėje apibrėžto abstrakčiojo metodo turinys. abstraktus metodas turi būti deklaruotas abstrakti klasė . Abstrakčių metodų matomumą galime nustatyti kaip privatų arba viešą. Negalime paskelbti abstrakčiojo metodo galutiniu, nes jis pažeidžia abstraktaus metodo pranašumą.

Tikrasis abstraktaus metodo įgyvendinimas turi būti vaiko klasėje. Abstraktų metodą galime apibrėžti taip:

konvertuoti eilutės datą
 abstract public void findArea(); 

Sukurkime abstrakčiojo metodo iškvietimo pavyzdį.

Šiame pavyzdyje sukūrėme klasę pavadinimu AbstractMethodPavyzdys ir paskelbti jį kaip abstrakčią. Šioje klasėje mes paskelbėme abstraktų metodą pavadinimu Rodyti() . Po to sukūrėme kitą klasę pavadinimu AbstractMethodCalling kuris pratęsia AbstractMethodPavyzdys klasė. Šioje klasėje įdiegėme abstrakčiąjį metodą.

Norėdami iškviesti abstraktųjį metodą show(), sukūrėme pirminės klasės egzempliorių ir iškvietėme abstraktųjį metodą.

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(); } } 

Išvestis:

 The abstract method called.