logo

Statická metóda verzus metóda inštancie v jazyku Java

V Java metódy definujú správanie tried a objektov. Pochopenie rozdielu medzi statickými metódami a metódami inštancie je nevyhnutné pre písanie čistého a efektívneho kódu.

Čo je statická metóda?

A statická metóda patrí skôr do triedy než do akéhokoľvek konkrétneho objektu.

  • Dá sa volať bez vytvorenia inštancie triedy.
  • Keďže statické metódy sú špecifické pre akýkoľvek objekt, môžu pristupovať iba k statickým členom (údajom a metódam) a nemajú prístup k nestatickým členom.
Java
import java.io.*; class Geeks {  // static method  public static void greet() {  System.out.println('Hello Geek!');  }  public static void main(String[] args) {  // calling the method directily  greet();  // using the class name  Geeks.greet();  } } 

Výstup
Hello Geek! Hello Geek! 

Vysvetlenie: Vyššie uvedený príklad ukazuje statickú metódu greet() v triede Geeks, statické metódy možno volať bez vytvorenia objektu. V hlavnej metóde nevytvárame objekt triedy Geek, metódu voláme priamo názvom triedy, ktorý je Geeks a následne vytlačíme výstup.



Čo je to metóda inštancie?

An Metóda inštancie patrí k objektu.

  • Potrebujete vytvoriť inštanciu triedy, ktorú chcete volať.
  • Má prístup k premenným inštancie, iným metódam inštancie a statickým členom triedy.
  • Mať prístup k thisodkaz ktorý ukazuje na aktuálny objekt.
Java
import java.io.*; class Test {  String n = '';  // Instance method   public void test(String n) {   this.n = n;   } } class Geeks {  public static void main(String[] args) {  // create an instance of the class  Test t = new Test();  // calling an instance method in the class 'Geeks'  t.test('GeeksforGeeks');  System.out.println(t.n);  } } 

Výstup
GeeksforGeeks 

Vysvetlenie: Vyššie uvedený príklad ukazuje, ako používať metódu inštancie v jazyku Java. Vytvárame objekt triedy Test a voláme metódu test na nastavenie hodnoty a potom tlačíme výstup.

cpld vs FPGA

Rozdiel medzi statickou metódou a inštanciou

Nasledujúca tabuľka uvádza  hlavné rozdiely medzi statickými metódami a metódami inštancie v jazyku Java.

Vlastnosti

Statická metóda

Metóda inštancie

koľko miest je v Spojených štátoch amerických

Definícia

Vytvorené pomocou statického kľúčového slova a získané bez vytvorenia objektu.

Vyžaduje vyvolanie objektu svojej triedy.

Prístup

Prístup iba k statickým premenným a metódam.

Má prístup k statickým členom aj členom inštancie.

raní mukeri

this kľúčové slovo

Nedá sa použiť toto kľúčové slovo v rámci statických metód.

Môžete použiť kľúčové slovo this na odkazovanie na aktuálny objekt.

rolovacie koliesko nefunguje

Prepísať

Nepodporuje runtime polymorfizmus

Podporuje runtime polymorfizmus

k algoritmu najbližšieho suseda

Alokácia pamäte

Načítané raz za triedu

Každý objekt má svoju kópiu


Vytvoriť kvíz