logo

Ako zavolať metódu v jazyku Java

In Java , metóda je súbor príkazov, ktoré vykonávajú špecifickú úlohu alebo operáciu. Je široko používaný, pretože poskytuje znovupoužiteľnosť kódových prostriedkov, ktoré sa napíšu raz a použijú ich mnohokrát. Poskytuje tiež jednoduchú úpravu. Každý metóda má svoje meno, pod ktorým je volal . Keď kompilátor prečíta názov metódy, metóda sa zavolá a vykoná zadanú úlohu. V tejto časti sa naučíme ako volať preddefinované, používateľom definované, statické, a abstraktné metódy v Jave .

Volanie statickej metódy v jazyku Java

In Java , statická metóda je metóda, ktorá sa vyvoláva alebo volá bez vytvorenia objektu triedy, v ktorej je metóda definovaná. Všetky metódy, ktoré majú pred názvom metódy statické kľúčové slovo, sú známe ako statické metódy . Môžeme tiež vytvoriť statickú metódu pomocou statické kľúčové slovo pred názvom metódy. Môžeme zavolať statickú metódu pomocou ClassName.methodName .

Najlepším príkladom statickej metódy je Hlavná() metóda. Volá sa bez vytvorenia objektu.

koľko kláves má klávesnice

V nasledujúcom programe sme zavolali statickú metódu triedy Math s názvom min(), ktorá vracia minimálnu hodnotu dvoch čí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ýkon:

 Minimum number is 23 

Volanie preddefinovanej metódy v jazyku Java

V jazyku Java sú preddefinované metódy metódy, ktoré sú už definované v triedach. Keď požadujeme akúkoľvek preddefinovanú metódu, zavoláme ju len jej názvom.

V nasledujúcom príklade sme použili metódu s názvom hashCode() triedy Objekt . Na volanie preddefinovanej metódy hashCode() , vytvorili sme objekt obj triedy Object, pretože je to metóda triedy Object. Použitím objektu, ktorý sme nazvali hashCode() metóda, ktorá vráti a hash kód hodnotu pre 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ýkon:

 Hash Code of the object is: 2036368507 

Volanie metódy definovanej používateľom v jazyku Java

Ak chcete zavolať užívateľom definovanú metódu, najprv vytvoríme metódu a potom ju zavoláme. V triede musí byť vytvorená metóda s názvom metódy, za ktorým budú nasledovať zátvorky (). Definícia metódy pozostáva z hlavičky metódy a tela metódy.

Metódu môžeme zavolať pomocou nasledujúceho:

 method_name(); //non static method calling 

Ak je metóda statická, použijeme nasledovné:

 obj.method_name(); //static method calling 

Kde obj je objekt triedy.

latexové zoznamy

V nasledujúcom príklade sme vytvorili dve užívateľom definované metódy pomenované showMessage() a displayMessage() . The showMessage() metóda je statická metóda a displayMessage() metóda je nestatická metóda.

Všimnite si, že sme zavolali showMessage() metódu priamo, bez použitia objektu. Kým displayMessage() metóda sa volá pomocou objektu triedy.

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

Výkon:

 The static method invoked. Non-static method invoked. 

Trieda môže obsahovať dve alebo viac metód s rovnakým názvom. Teraz vyvstáva otázka, ako môžeme nazvať dve metódy s rovnakým názvom.

Ak má trieda dve alebo viac metód s rovnakým názvom, je odlíšená jednou z nich návratový typ alebo typy parametrov alebo počet parametrov . Tento koncept sa nazýva preťaženie metódy . Napríklad:

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

Vyššie uvedené dve metódy majú rovnaký názov suma() ale obe sú odlišné. Prvá metóda sum() vracia hodnotu int a analyzuje dve celé čísla x a y ako parametre. Zatiaľ čo druhá metóda sum() vracia dvojitú hodnotu a analyzuje dve dvojité hodnoty a a y ako parametre.

Vytvorme program, ktorý preťažuje sub() metóda.

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ýkon:

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

Volanie abstraktnej metódy v Jave

Abstraktná metóda je metóda, ktorá je deklarovaná pomocou an abstraktné kľúčové slovo. Abstraktná metóda má iba deklaráciu metódy. Telo abstraktnej metódy definovanej v inej triede. abstraktná metóda musí byť deklarovaná v abstraktná trieda . Viditeľnosť abstraktných metód môžeme nastaviť ako súkromnú alebo verejnú. Abstraktnú metódu nemôžeme vyhlásiť za konečnú, pretože porušuje výhodu abstraktnej metódy.

Samotná implementácia abstraktnej metódy musí byť v triede dieťaťa. Abstraktnú metódu môžeme definovať takto:

zreťazenie reťazcov java
 abstract public void findArea(); 

Vytvorme si príklad volania abstraktnej metódy.

V nasledujúcom príklade sme vytvorili triedu s názvom Príklad abstraktnej metódy a vyhlásiť ho za abstraktný. V tejto triede sme deklarovali abstraktnú metódu s názvom šou() . Potom sme vytvorili ďalšiu triedu s názvom AbstractMethodCalling ktorý predlžuje Príklad abstraktnej metódy trieda. V tejto triede sme implementovali abstraktnú metódu.

Na zavolanie abstraktnej metódy show() sme vytvorili inštanciu nadradenej triedy a vyvolali abstraktnú metódu.

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ýkon:

 The abstract method called.