Úvod do Constructor and Destructor v Jave

Nasledujúci článok Constructor and Destructor in Java poskytuje podrobný prehľad vytvorenia konštruktora a destruktora v Java. Každý programovací jazyk má tento koncept nazývaný konštruktor a deštruktor. Java je objektovo orientovaný programovací jazyk. Ak poznáte objektovo-orientované koncepty, bude pre vás užitočné, aby ste ich jasnejšie pochopili. Konštruktor je niečo, čo inicializuje objekty a deštruktory majú zničiť túto inicializáciu. Java má automatickú zbierku odpadu, ktorá používa algoritmus značenia a zametania.

Čo je to Constructor and Destructor v Java?

Konštruktor sa používa na inicializáciu premennej, čo znamená, že pridelí rovnakú pamäť. Konštruktor nie je nič iné ako automatická inicializácia objektu. Kedykoľvek program v tom čase vytvorí objekt, automaticky sa volá konštruktor. Túto metódu nemusíte explicitne volať. Destruktor sa používa na uvoľnenie tejto pamäte pridelenej počas inicializácie. Všeobecne v jave nemusíme explicitne volať deštruktor. Java má funkciu automatického zberu odpadu.

Prečo potrebujeme v Java Java Constructor and Destructor?

Konštruktor a deštruktor sa väčšinou používajú na efektívne alokovanie a delokáciu pamäte. Konštruktor a deštruktor zohrávajú veľmi dôležitú úlohu v akomkoľvek programovacom jazyku inicializácie a zničenia po použití, aby sa uvoľnil pamäťový priestor.

Ako funguje konštruktor a ničiteľ v Jave

Konstruktor je iba metóda java. Ktorý má rovnaký názov ako názov triedy. konštruktorová metóda nemá žiadny návratový typ.

Kvôli prehľadnosti si pozrite nasledujúci príklad:

class Employee (
Employee() (
)
)

Ak vidíte vo vyššie uvedenom príklade, metóde, ktorá má rovnaké meno ako názov triedy, sme nepridelili žiadny typ návratu, napríklad int alebo neplatné.

Používa sa hlavne na inicializáciu objektu. Keď vytvárame objekt triedy, vyvoláva sa konštruktor.

S nasledujúcim útržkom kódu to bude jasnejšie.

Ako vytvoriť Constructors and Destructors v jave?

Pozrite sa na nasledujúci príklad

class Employee (
Employee() ( //This is constructor. It has same name as class name.
System.out.println(“This is the default constructor”);
)
)

Typy konštruktorov

Existujú dva typy konštruktorov v závislosti od typu, ktorý môžeme pridať a odstrániť premenné.

1. Predvolený konštruktor

2. Parametrizovaný konštruktor

S týmto sa tiež stretneme s preťažením konštruktora.

1. Predvolený konštruktor

Toto je jediný typ konštruktora. V predvolenom nastavení bez akýchkoľvek parametrov prebieha tento konštruktor. Tento konštruktor v ňom nemá žiadne parametre.

Príklad:

Class Abc(
Abc()(
System.out.println(“This is the example of default constructor.”);
)
)

2. Parametrizovaný konštruktor

Ako už názov napovedá, parametrizovaný konštruktor má v čase inicializácie objektu niektoré parametre alebo argumenty.

Príklad:

class Square(
int width, height;
Square( int a, int b)(
width = a;
height = b;
)
int area()(
return width * height;
)
)
class Cal(
public static void main(String() args)(
(
Square s1 = new Square(10, 20);
int area_of_sqaure = s1.area();
System.out.println("The area of square is:" + area_of_sqaure);
)
)
)

Výkon:

java Cal

Rozloha námestia je 200

Teraz je čas hovoriť o preťažení konštruktora v jave. To znamená, že majú viac konštruktorov s rôznymi parametrami. Vďaka tomu môže každý konštruktér robiť rôzne úlohy. Niekedy podľa požiadavky potrebujeme inicializovať konštruktérov rôznymi spôsobmi.

príklad

public class Abc(
String name;
int quantity;
int price;
Abc( String n1, int q1, int p1)(
name = n1;
quantity = q1;
price = p1;
)
Abc( String n2, int p2)(
name = n2;
price = p2;
quantity = price/10;
)
void display()(
System.out.println("Product Name"+ name);
System.out.println("Product quantity is"+ quantity);
System.out.println("Product price is:"+ price);
)
public static void main(String() args)(
Abc product1;
product1 = new Abc("Dates", 500, 50);
product1.display();
product1 = new Abc("cashu", 800);
product1.display();
)
)

Výkon:

Dátumy názvu produktu

Množstvo produktu je 500

Cena produktu je 50

Názov produktu cashu

Množstvo produktu je 80

Cena produktu je 800

Vyskúšajte vyššie uvedený program a budete mať jasno, čo sa presne deje s preťažením konštruktora.

ničiteľ

Predtým, ako začnem hovoriť o deštruktore, poviem vám, že v jave nie je deštruktor. Destruktor je v programovacom jazyku C ++. Ak hovoríme o jave, potom má java funkciu nazývanú automatický zberač odpadu. Ktoré uvoľňujú dynamicky pridelenú pamäť, keď nie sú k dispozícii. Tento koncept je veľmi dôležitý a môžete si prečítať viac o tejto zbierke odpadu v jave.

  • Java automaticky používa techniku ​​zhromažďovania odevov.
  • Nie je potrebné výslovne používať deštruktory, ako je C ++.
  • Na alokáciu pamäte v jave nemáme funkciu malloc ako v programovaní v C.
  • Rovnaký proces prideľovania pamäte vykonáva nový operátor v jave.
  • nové kľúčové slovo alokuje pamäťový priestor pre objekt v pamäti haldy.
  • V čase vykonávania programu nové kľúčové slovo pridelí objektu určitý priestor v pamäti. Koncový užívateľ sa musí starať o to, pretože program prideľuje pamäť. V čase, keď je objekt používaný v programoch vykonaných s prácou, sa pamäť použitá pre tento objekt použije na inú úlohu. Tento proces efektívneho využívania pamäte je úlohou zberu odpadu v jave.

Poďme teda hovoriť o deštruktore. Ako vieme, v jave nie je ničiteľ, pretože má na to metódu finalize (). Ďalej uvádzame niektoré z kľúčových bodov.

Finalize () metódy

  • Metóda Finalize funguje ako deštruktor a opak konštruktora, ako sme videli predtým.
  • Na odstránenie objektu sa zvyčajne používa metóda finalizácia.
  • Pre použitie tejto metódy musíme explicitne definovať túto metódu v jave.
  • Metóda finalizácie začne fungovať po dokončení zberu odpadu.
  • To jednoducho znamená, že po uvoľnení pamäťového priestoru prostredníctvom pridelenia pamäťového priestoru z objektov existuje šanca, že využitie pamäte ešte existuje s inými vecami, ako sú písma atď., Aby sa tento pamäťový priestor odstránil alebo aby sa tento priestor uvoľnil, použijeme metódu finalize ().

záver

Konštruktor a deštruktor (zber odpadu v jave) sú veľmi dôležité veci, ktoré sa objasnia v akomkoľvek programovacom jazyku, pretože to je začiatok, kde môžete skutočne zistiť, ako sa veci robia na pozadí, aby ste spravovali pamäťový priestor.

Odporúčané články

Toto je príručka pre program Constructor and Destructor v Jave. Tu diskutujeme o úvode Constructor and Destructor, Prečo to potrebujeme a ako konštruktor a deštruktor pracuje v jave spolu s príkladom. Ďalšie informácie nájdete aj v nasledujúcich článkoch -

  1. Bitová manipulácia v Jave
  2. Najlepšie Java IDE
  3. Usporiadanie haldy v Jave
  4. Čo je rozhranie Java?
  5. Čo je to konštruktor a ničiteľ v C ++?
  6. Príklady implementácie triedenia haldy v Pythone
  7. Sprievodca Destructor v PHP s príkladmi

Kategórie: