logo

Instanciácia v jazyku Java

Inštancia je nesmierne slovo na definovanie univerzálneho a jednoduchého konceptu v programovaní Java, ktorý vytvára nové inštancie predmety na použitie v programe. V tejto časti budeme diskutovať čo je inštancia v jazyku Java, ako vytvoriť inštanciu triedy, a aké sú spôsoby vytvárania inštancií alebo objektov triedy?

Instanciácia v jazyku Java

Inštancia

In Java , inštancia znamená zavolať konštruktér triedy, ktorá vytvára príklad alebo objekt typu tejto triedy. Inými slovami, vytvorenie objektu triedy sa nazýva inštancia . Zaberá počiatočnú pamäť objektu a vracia referenciu. Inštanciácia objektu v jazyku Java poskytuje návrh triedy.

Čo je objekt?

  • Je to runtime entita.
  • Obsahuje plán triedy.
  • Môžeme vytvoriť ľubovoľný počet objektov triedy.
  • Môže predstavovať užívateľom definované dáta ako napr Vektor , zoznamy atď.

Syntax pre inštanciu

 ClassName objName = new ClassName(); 

Alebo

 ClassName cn; cn= new ClassName; 

Poďme pochopiť vyššie uvedené tvrdenia prostredníctvom príkladu.

Vytváranie inštancií

Existujú dva spôsoby vytvárania inštancií:

Použitie nového kľúčového slova

Java poskytuje Nový kľúčové slovo vytvoriť inštanciu triedy.

Definovanie referencie

 //defines a reference (variable) that can hold an object of the DemoClass DemoClass dc; 

Inštancia

ako získať hru holub na android
 DemoClass dc = new DemoClass(); //instantiation 

Môžeme tiež vytvoriť inštanciu vyššie uvedenej triedy nasledovne, ak definujeme referenčnú premennú.

 //creates a DemoClass object (instantiate) //new keyword allocates memory space for the newly created object dc = new DemoClass(); 

Pozorujeme, že keď používame Nový kľúčové slovo, za ktorým nasleduje názov triedy, vytvorí inštanciu alebo objekt tejto triedy. Vytvorenie konštruktora triedy je známy aj ako inštancia .

Poznámka: Ak chceme vyvolať metódy lokálnej vnútornej triedy, musíme túto triedu inštanciovať.

Použitie statickej továrenskej metódy

Ďalším spôsobom, ako vytvoriť inštanciu triedy, je zavolať a statické továrenská metóda . Trieda môže poskytnúť verejnú statickú továrenskú metódu, ktorá nie je ničím iným ako statickou metódou, ktorá vracia an príklad triedy. Vždy si pamätajte, že to nie je to isté ako vzor továrenskej metódy .

Môžeme ho použiť namiesto konštruktora. Poskytnutie metódy statickej továrne namiesto konštruktora má klady aj zápory. The najprv výhodou je, že statické továrenské metódy majú na rozdiel od konštruktorov aj názvy. The druhý výhodou je, že na rozdiel od konštruktorov nie sú povinní vytvárať nový objekt zakaždým, keď sú vyvolané. The tretí výhodou je, že na rozdiel od konštruktorov môžu vrátiť objekt akéhokoľvek podtypu svojho návratového typu. The štvrtý výhodou je, že znižujú podrobnosť vytvárania inštancií parametrizovaných typov.

Nevýhodou je, že poskytovanie iba statických výrobných metód spočíva v tom, že triedy bez verejných alebo chránených konštruktorov nemožno podtriediť. Ďalšou nevýhodou je, že nie sú ľahko odlíšiteľné od iných statických metód.

Pozrime sa na príklad metódy statickej továrne.

 public final class Furniture { //.. private int price; private String description; private Furniture (int price, String description) { this.price = price; this.description = description; } public static Furniture getNewFurniture (int price, String description) { return new Furniture (price, description); } //.. } 

Pozrime sa na niektoré dôležité otázky, ktoré vám môžu napadnúť.

regálových psov

Môžeme vytvoriť inštanciu abstraktnej triedy?

Nie, nemôžeme vytvoriť inštanciu abstraktné triedy . Ale môžu byť podtriedené. Keď je abstraktná trieda podtriedou, zvyčajne poskytuje implementácie pre všetky abstrakty metódy vo svojej rodičovskej triede.

Aký je rozdiel medzi konkretizáciou a inicializáciou?

Instanciácia a inicializácia sú úplne odlišné pojmy v programovaní Java.

Inicializácia: Priradenie hodnoty premennej sa nazýva inicializácia . Napríklad, cena = 100 . Nastaví počiatočnú hodnotu variabilných nákladov na 100.

Inštancia: Vytvorenie objektu pomocou kľúčového slova new sa nazýva inštancia. Napríklad, Auto ca = nové auto(). Vytvára inštanciu triedy Car.