Uvod u konstruktor i destruktor na Javi

Sljedeći članak Konstruktor i Destruktor na Javi pruža detaljan pregled stvaranja konstruktora i destruktora na Javi. Svaki programski jezik ima ovaj pojam koji se naziva konstruktor i destruktor. Java je objektno orijentirani programski jezik. Ako poznajete objektno orijentirane koncepte, bit će vam korisno da to jasnije shvatite. Konstruktor je nešto što inicijalizira objekte, a destruktori žele uništiti tu inicijalizaciju. Java ima automatsko prikupljanje smeća koje je koristio algoritam markiranja i čišćenja.

Što su Konstruktor i Destruktor na Javi?

Konstruktor se koristi za inicijalizaciju varijable što znači da za nju izdvaja memoriju. Konstruktor nije ništa drugo do automatska inicijalizacija objekta. Kad god program stvori objekt u tom vremenu, konstruktor se automatski zove. Ne morate ovu metodu pozivati ​​izričito. Destruktor se koristi za oslobađanje memorije dodijeljene tijekom inicijalizacije. Generalno, u Javi ne moramo eksplicitno zvati destruktora. Java ima značajku automatskog odvoza smeća.

Zašto su nam potrebni Java konstruktor i destruktor?

Konstruktor i destruktor uglavnom se koriste za učinkovito upravljanje raspoređivanjem i de-dodjelom memorije. Konstruktor i destruktor igraju vrlo važnu ulogu u bilo kojem programskom jeziku inicijalizacije i uništavanja nakon upotrebe kako bi se oslobodio memorijski prostor.

Kako Constructor i Destructor rade na Javi

Konstruktor je samo metoda u Javi. Koji ima isto ime kao i naziv klase. konstruktor metoda nema povratni tip.

Pogledajte sljedeći primjer radi veće jasnoće:

class Employee (
Employee() (
)
)

Ako vidite u gornjem primjeru, nismo dobili nijedan tip povratka poput int ili void metodi koja ima isto ime kao i naziv klase.

Koristi se uglavnom za inicijalizaciju objekta. Kad u to vrijeme stvaramo objekt klase, poziva se konstruktor.

To će biti jasnije sa sljedećim isječkom koda.

Kako stvoriti Constructors i Destructors u Javi?

Pogledajte slijedeći primjer

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

Vrste konstruktora

Postoje dvije vrste konstruktora, ovisno o vrsti možemo dodati i ukloniti varijable.

1. Zadani konstruktor

2. Parameterizirani konstruktor

Uz to, također ćemo vidjeti preopterećenje konstruktora.

1. Zadani konstruktor

Ovo je jedna vrsta konstruktora. Prema zadanim postavkama, bez ikakvih parametara, odvija se ovaj konstruktor. Ovaj konstruktor nema nikakve parametre u sebi.

Primjer:

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

2. Parameterizirani konstruktor

Kao što ime sugerira, parametrizirani konstruktor ima neke parametre ili argumente u vrijeme inicijalizacije objekta.

Primjer:

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);
)
)
)

Izlaz:

java Cal

Površina trga je 200

Sada je vrijeme za razgovor o preopterećenju konstruktora u Javi. To znači da imate više konstruktora s različitim parametrima. Tako da s ovim svaki konstruktor može obaviti različite zadatke. Ponekad prema zahtjevu moramo konstruirati konstruktore na različite načine.

Primjer

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();
)
)

Izlaz:

Datumi naziva proizvoda

Količina proizvoda je 500

Cijena proizvoda je 50

Naziv proizvoda cashu

Količina proizvoda je 80

Cijena proizvoda je 800

Isprobajte gornji program i bit će vam jasno što se točno događa s preopterećenjem konstruktora.

peć za sagorijevanje otpadaka

Prije nego što započnem razgovor o destruktoru, kažem vam da u Javi nema destruktora. Destruktor je na programskom jeziku C ++. Ako govorimo o javi, onda java ima značajku koja se zove automatski sakupljač smeća. Koji oslobađaju dinamički dodijeljenu memoriju kada nema potrebe. Ovaj je koncept vrlo važan i možete istražiti više o ovoj kolekciji smeća u Javi.

  • Java automatski koristi tehniku ​​skupljanja odjeće za dodjelu memorije.
  • Nema potrebe za eksplicitnom uporabom destruktora poput C ++.
  • Za raspodjelu memorije u javi nemamo malloc funkciju kao u C programiranju.
  • Isti postupak dodjele memorije obavlja novi operator u javi.
  • nova ključna riječ dodjeljuje memorijski prostor za objekt u hrpi memorije.
  • U vrijeme izvođenja programa nova ključna riječ dodjeljuje malo memorijskog prostora za objekt. Krajnji korisnik se treba brinuti zbog toga, jer program dodjeljuje memoriju. U vrijeme kada se objekt koji se koristi u programima obavljenim s poslom memorija koja se koristi za objekt koristi za drugi zadatak. Ovaj postupak učinkovitog korištenja memorije posao je skupljanja smeća u Javi.

Razgovarajmo onda o destruktoru. Kao što znamo da u Javi nema destruktora kao što je to metoda finalize () učinila. U nastavku su neke od ključnih točaka koje treba napomenuti.

Finalizirati () metode

  • Metoda finalizacije je rad poput destruktora i suprotno od konstruktora kao što smo vidjeli ranije.
  • Općenito, metoda finalizacije koristi se za uklanjanje objekta.
  • Za korištenje ove metode moramo izričito definirati ovu metodu u javi.
  • Metoda dovršetka započinje s radom nakon što se svojim radom odvede smeće.
  • To jednostavno znači da nakon oslobađanja memorijskog prostora razmještanjem memorijskog prostora iz objekata postoji šansa da memorija i dalje postoji s drugim stvarima poput fontova itd. Da bi izbrisali taj memorijski prostor ili da biste oslobodili prostor iskoristili smo metodu finalize ().

Zaključak

Konstruktor i destruktor (prikupljanje smeća u Javi) vrlo su važne stvari koje trebate razjasniti u bilo kojem programskom jeziku, jer ovo je početak u kojem zapravo možete postići kako se stvari rade u pozadini za upravljanje memorijskim prostorom.

Preporučeni članci

Ovo je vodič za Konstruktor i Destruktor na Javi. Ovdje raspravljamo o uvodu u Konstruktor i Destruktor, zašto nam to treba i kako konstruktor i destruktor rade u Javi zajedno s primjerom. Možete pogledati i sljedeće članke da biste saznali više -

  1. Manipulacija bita u Javi
  2. Najbolji Java IDE
  3. Poredaj u Javi
  4. Što je Java sučelje?
  5. Što su Konstruktor i Destruktor u C ++?
  6. Primjeri za implementaciju sortiranja heap u Python
  7. Vodič za destruktora u PHP-u s primjerima

Kategorija: