U Java , the metoda je zbirka naredbi koja izvodi određeni zadatak ili operaciju. Široko se koristi jer omogućuje ponovnu upotrebu koda, što znači da se napiše jednom i koristi više puta. Također omogućuje jednostavnu izmjenu. Svaki metoda ima svoje ime po kojem je nazvao . Kada prevodilac pročita naziv metode, metoda se poziva i izvršava navedeni zadatak. U ovom odjeljku naučit ćemo kako pozvati unaprijed definirane, korisnički definirane, statične, i sažetak metode u Javi .
Pozivanje statičke metode u Javi
U Java , statička metoda je metoda koja se doziva ili poziva bez stvaranja objekta klase u kojoj je metoda definirana. Sve metode koje imaju ključnu riječ static prije naziva metode poznate su kao statičke metode . Također možemo stvoriti statičku metodu korištenjem statički ključna riječ prije naziva metode. Možemo pozvati statičku metodu pomoću ClassName.methodName .
Najbolji primjer statičke metode je glavni() metoda. Poziva se bez stvaranja objekta.
unsigned int c programiranje
U sljedećem programu pozvali smo statičku metodu klase Math, nazvanu min() koja vraća minimalnu vrijednost dva broja.
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); } }
Izlaz:
Minimum number is 23
Pozivanje unaprijed definirane metode u Javi
U Javi, unaprijed definirane metode su metode koje su već definirane u klasama. Kada nam je potrebna bilo koja unaprijed definirana metoda, jednostavno je pozivamo njenim imenom.
U sljedećem primjeru koristili smo metodu pod nazivom hashCode() razreda Objekt . Za pozivanje unaprijed definirane metode hashCode() , stvorili smo objekt obj klase Object jer je to metoda klase Object. Korištenjem objekta koji smo nazvali hashCode() metoda koja vraća a hash kod vrijednost za 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); } }
Izlaz:
Hash Code of the object is: 2036368507
Pozivanje korisnički definirane metode u Javi
Da bismo pozvali korisnički definiranu metodu, prvo kreiramo metodu i zatim je pozovemo. Metoda mora biti kreirana u klasi s nazivom metode, iza kojeg slijede zagrade (). Definicija metode sastoji se od zaglavlja metode i tijela metode.
Metodu možemo pozvati koristeći sljedeće:
method_name(); //non static method calling
Ako je metoda statična, koristimo sljedeće:
java unos
obj.method_name(); //static method calling
Gdje je obj objekt klase.
U sljedećem primjeru stvorili smo dvije korisnički definirane metode pod nazivom prikažiPoruku() i displayMessage() . The prikažiPoruku() metoda je statična metoda i displayMessage() metoda je nestatična metoda.
Imajte na umu da smo pozvali prikažiPoruku() metoda izravno, bez korištenja objekta. Dok displayMessage() metoda se poziva korištenjem objekta klase.
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 } }
Izlaz:
The static method invoked. Non-static method invoked.
Klasa može sadržavati dvije ili više metoda s istim imenom. Sada se postavlja pitanje kako možemo nazvati dvije metode istim imenom.
Kada klasa ima dvije ili više metoda s istim imenom, ona se razlikuje po bilo kojoj vrsta povrata ili vrste parametara ili broj parametara . Ovaj koncept se zove preopterećenje metode . Na primjer:
int sum(int x, int y); double sum(double x, double y);
Gornje dvije metode imaju isti naziv iznos() ali oboje su različiti. Prva metoda sum() vraća int vrijednost i analizira dva cijela broja x i y kao parametre. Dok druga metoda sum() vraća dvostruku vrijednost i analizira dvije dvostruke vrijednosti a i y kao parametre.
Kreirajmo program koji se preopterećuje pod() 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); } }
Izlaz:
subtraction of integer values: 22 subtraction of double values: 13.170000000000002
Pozivanje apstraktne metode u Javi
Apstraktna metoda je metoda koja je deklarirana s sažetak ključna riječ. Apstraktna metoda ima samo deklaraciju metode. Tijelo apstraktne metode definirano u drugoj klasi. apstraktna metoda mora biti deklarirana u apstraktna klasa . Vidljivost apstraktnih metoda možemo postaviti kao privatne ili javne. Apstraktnu metodu ne možemo proglasiti konačnom jer narušava prednost apstraktne metode.
Stvarna implementacija apstraktne metode mora biti u djetetovom razredu. Apstraktnu metodu možemo definirati na sljedeći način:
npm instalacijska naredba
abstract public void findArea();
Kreirajmo primjer pozivanja apstraktne metode.
U sljedećem primjeru stvorili smo klasu s imenom AbstractMethodExample i proglasiti ga apstraktnim. U ovoj klasi smo deklarirali apstraktnu metodu nazvanu pokazati() . Nakon toga smo kreirali drugu klasu pod nazivom AbstractMethodCalling koji proširuje AbstractMethodExample razreda. U ovoj klasi implementirali smo apstraktnu metodu.
Da bismo pozvali apstraktnu metodu show(), stvorili smo instancu nadređene klase i pozvali apstraktnu 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(); } }
Izlaz:
The abstract method called.