Sisään Java , menetelmä on kokoelma lauseita, jotka suorittavat tietyn tehtävän tai toiminnon. Sitä käytetään laajalti, koska se tarjoaa uudelleenkäytettävyyden koodille, joka kirjoittaa kerran ja käyttää sitä monta kertaa. Se tarjoaa myös helpon muokkauksen. Jokainen menetelmä on oma nimi, jolla se on nimeltään . Kun kääntäjä lukee menetelmän nimen, menetelmä kutsutaan ja suorittaa määritetyn tehtävän. Tässä osiossa opimme kuinka kutsua ennalta määritettyä, käyttäjän määrittämää, staattista, ja abstrakti menetelmät Javassa .
Staattisen menetelmän kutsuminen Javassa
Sisään Java , staattinen menetelmä on menetelmä, jota kutsutaan tai kutsutaan luomatta sen luokan objektia, jossa menetelmä on määritelty. Kaikki menetelmät, joilla on staattinen avainsana ennen menetelmän nimeä, tunnetaan nimellä staattiset menetelmät . Voimme myös luoda staattisen menetelmän käyttämällä staattinen avainsana ennen menetelmän nimeä. Voimme kutsua staattista menetelmää käyttämällä ClassName.methodName .
Paras esimerkki staattisesta menetelmästä on pää() menetelmä. Sitä kutsutaan luomatta objektia.
kaksiulotteinen matriisiohjelma c
Seuraavassa ohjelmassa olemme kutsuneet Math-luokan staattista menetelmää nimeltä min(), joka palauttaa kahden luvun vähimmäisarvon.
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); } }
Lähtö:
Minimum number is 23
Ennalta määritetyn menetelmän kutsuminen Javassa
Javassa ennalta määritetyt menetelmät ovat menetelmiä, jotka on jo määritetty luokissa. Kun vaadimme ennalta määritettyä menetelmää, kutsumme menetelmää sen nimellä.
Seuraavassa esimerkissä olemme käyttäneet menetelmää nimeltä hash koodin() luokasta Esine . Ennalta määritetyn menetelmän kutsuminen hash koodin() , olemme luoneet objektin obj Object-luokan menetelmä, koska se on Object-luokan menetelmä. Käyttämällä objektia olemme kutsuneet hash koodin() menetelmä, joka palauttaa a hash koodin arvo objektille.
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); } }
Lähtö:
Hash Code of the object is: 2036368507
Käyttäjän määrittämän menetelmän soittaminen Javassa
Kutsuaksemme käyttäjän määrittämää menetelmää luomme ensin menetelmän ja kutsumme sitä sitten. Luokkaan on luotava menetelmä, jolla on menetelmän nimi ja sen jälkeen sulut (). Metodin määritelmä koostuu menetelmän otsikosta ja menetelmän rungosta.
Voimme kutsua menetelmää käyttämällä seuraavaa:
method_name(); //non static method calling
Jos menetelmä on staattinen, käytämme seuraavaa:
obj.method_name(); //static method calling
Missä obj on luokan kohde.
Seuraavassa esimerkissä olemme luoneet kaksi käyttäjän määrittämää menetelmää nimeltä näytä viesti() ja näyttöviesti() . The näytä viesti() menetelmä on staattinen menetelmä ja näyttöviesti() menetelmä on ei-staattinen menetelmä.
Huomaa, että olemme kutsuneet näytä viesti() menetelmä suoraan, ilman objektia. Samalla kun näyttöviesti() menetelmää kutsutaan käyttämällä luokan objektia.
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 } }
Lähtö:
kuinka monta kaupunkia on Yhdysvalloissa
The static method invoked. Non-static method invoked.
Luokka voi sisältää kaksi tai useampia samannimistä metodia. Nyt herää kysymys, kuinka voimme kutsua kahta menetelmää samalla nimellä.
Kun luokassa on kaksi tai useampi samanniminen menetelmä, se erotetaan jommallakummalla palautustyyppi tai parametrityypit tai parametrien määrä . Tätä käsitettä kutsutaan menetelmän ylikuormitus . Esimerkiksi:
int sum(int x, int y); double sum(double x, double y);
Yllä olevilla kahdella menetelmällä on sama nimi summa() mutta molemmat ovat erilaisia. Ensimmäinen sum()-menetelmä palauttaa int-arvon ja jäsentää kaksi kokonaislukua x ja y parametreiksi. Toinen summa()-menetelmä palauttaa kaksinkertaisen arvon ja jäsentää kaksi kaksoisarvoa a ja y parametreiksi.
Luodaan ylikuormittava ohjelma sub() menetelmä.
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); } }
Lähtö:
subtraction of integer values: 22 subtraction of double values: 13.170000000000002
Abstraktin menetelmän kutsuminen Javassa
Abstrakti menetelmä on menetelmä, joka on ilmoitettu an abstrakti avainsana. Abstraktilla menetelmällä on vain menetelmän määrittely. Toisessa luokassa määritellyn abstraktin menetelmän runko. abstrakti menetelmä on ilmoitettava abstrakti luokka . Voimme asettaa abstraktien menetelmien näkyvyyden yksityiseksi tai julkiseksi. Emme voi julistaa abstraktia menetelmää lopulliseksi, koska se rikkoo abstraktin menetelmän etua.
Abstraktin menetelmän varsinaisen toteutuksen tulee olla lapsen luokassa. Voimme määritellä abstraktin menetelmän seuraavasti:
npm asennuskomento
abstract public void findArea();
Luodaan esimerkki abstraktin menetelmän kutsumisesta.
Seuraavassa esimerkissä olemme luoneet luokan nimellä AbstractMethodExample ja julistaa sen abstraktiksi. Tässä luokassa olemme ilmoittaneet abstraktin menetelmän nimeltä näytä() . Sen jälkeen olemme luoneet toisen luokan nimeltä AbstractMethodCalling joka laajentaa AbstractMethodExample luokkaa. Tällä luokalla olemme toteuttaneet abstraktin menetelmän.
Abstraktin metodin show() kutsumiseksi olemme luoneet pääluokan esiintymän ja kutsuneet abstraktin menetelmän.
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(); } }
Lähtö:
The abstract method called.