Úvod do Constructor and Destructor v Javě

Následující článek Constructor and Destructor in Java poskytuje podrobný přehled pro vytvoření konstruktoru a destruktoru v Javě. Každý programovací jazyk má tento koncept nazvaný konstruktor a destruktor. Java je objektově orientovaný programovací jazyk. Pokud znáte objektově orientované koncepty, bude pro vás užitečné, abyste to pochopili jasněji. Konstruktor je něco, co inicializuje objekty a destruktory mají tuto inicializaci zničit. Java má automatickou sbírku odpadků, která používá algoritmus značení a zametání.

Co je to Constructor and Destructor v Javě?

Konstruktor se používá k inicializaci proměnné, což znamená, že přiděluje paměť stejnému. Konstruktor není nic jiného než automatická inicializace objektu. Kdykoli program vytvoří objekt v té době, konstruktor se nazývá automaticky. Tuto metodu nemusíte explicitně volat. Destruktor se používá k uvolnění paměti přidělené při inicializaci. Obecně v Java nemusíme explicitně volat destruktor. Java má funkci automatického sběru odpadu.

Proč v Java potřebujeme Constructor and Destructor?

Konstruktor a destruktor se většinou používají k efektivnímu přidělování a oddělování paměti. Konstruktor a destruktor hrají velmi důležitou roli v jakémkoli programovacím jazyce inicializace a zničení po použití, aby se uvolnil paměťový prostor.

Jak Constructor and Destructor funguje v Javě

Konstruktor je jen java metoda. Který má stejný název jako název třídy. metoda konstruktoru nemá žádný návratový typ.

Pro větší přehlednost se podívejte na následující příklad:

class Employee (
Employee() (
)
)

Pokud vidíte ve výše uvedeném příkladu, nedali jsme metodě, která má stejný název jako název třídy, žádný návratový typ, například int nebo neplatné.

Používá se hlavně k inicializaci objektu. Když vytváříme objekt třídy, vyvoláme konstruktora.

S následujícím úryvkem kódu bude jasnější.

Jak vytvořit Constructors and Destructors v javě?

Podívejte se na následující příklad

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

Typy konstruktorů

Existují dva typy konstruktérů v závislosti na typu, který můžeme přidávat a odebírat proměnné.

1. Výchozí konstruktor

2. Parametrizovaný konstruktor

S tím také uvidíme přetížení konstruktoru.

1. Výchozí konstruktor

Toto je jeden typ konstruktéra. Ve výchozím nastavení bez parametrů se tento konstruktor uskuteční. Tento konstruktor v něm nemá žádné parametry.

Příklad:

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

2. Parametrizovaný konstruktor

Jak název napovídá, parametrizovaný konstruktor má v době inicializace objektu některé parametry nebo argumenty.

Pří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ýstup:

java Cal

Rozloha náměstí je 200

Nyní je čas mluvit o přetížení konstruktoru v javě. To znamená, že máte více konstruktérů s různými parametry. Díky tomu může každý konstruktor provádět různé úkoly. Někdy podle požadavku musíme konstruktéry inicializovat různými způsoby.

Pří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ýstup:

Data názvu produktu

Množství produktu je 500

Cena produktu je 50

Název produktu cashu

Množství produktu je 80

Cena produktu je 800

Vyzkoušejte výše uvedený program a bude vám jasné, co přesně se děje s přetížením konstruktoru.

Destruktor

Než začnu mluvit o destruktoru, dovolte mi říci, že v javě není žádný destruktor. Destruktor je v programovacím jazyce C ++. Pokud mluvíme o jávě, pak java má funkci zvanou automatický sběratel odpadu. Která uvolní dynamicky přidělenou paměť, když není k dispozici. Tento koncept je velmi důležitý a o jávském sbírce odpadků si můžete prohlédnout více.

  • Java používá techniku ​​sběru oděvů pro alokaci paměti automaticky.
  • Není třeba explicitně používat destruktory, jako je C ++.
  • Pro alokaci paměti v javě nemáme funkci malloc jako v programování v C.
  • Stejný proces přidělení paměti provádí nový operátor v javě.
  • nové klíčové slovo přiděluje paměťový prostor pro objekt v paměti haldy.
  • V době provádění programu nové klíčové slovo přiděluje objektu určitý paměťový prostor. Koncový uživatel se o to musí starat, protože program přiděluje paměť. V době, kdy je objekt používaný v programech prováděných s prací, je paměť použitá pro tento objekt využita pro jinou úlohu. Tento proces efektivního využití paměti je úkolem sběru odpadu v javě.

Pojďme tedy mluvit o destruktoru. Jak víme, v javě neexistuje destruktor, protože má metodu finalize (). Následuje několik klíčových bodů, které je třeba poznamenat.

Metody Finalize ()

  • Metoda Finalize funguje jako destruktor a opak konstruktoru, jak jsme viděli dříve.
  • Obecně se k odstranění objektu používá metoda finalizace.
  • Pro použití této metody musíme tuto metodu explicitně definovat v javě.
  • Metoda finalizace začne fungovat poté, co bude s odpadem provedeno její zpracování.
  • To jednoduše znamená, že po uvolnění paměťového prostoru uvolněním paměťového prostoru od objektů existuje šance, že využití paměti stále existuje s jinými věcmi, jako jsou písma atd., Aby se tento paměťový prostor odstranil nebo aby se tento prostor uvolnil, použijeme metodu finalize ().

Závěr

Konstruktor a destruktor (sběr odpadků v javě) jsou velmi důležité věci, které je třeba objasnit v jakémkoli programovacím jazyce, protože to je začátek, kde můžete skutečně zjistit, jak se věci dělají na pozadí, aby bylo možné spravovat paměťový prostor.

Doporučené články

Toto je průvodce programem Constructor and Destructor v Javě. Zde diskutujeme úvod do Constructor and Destructor, proč to potřebujeme a jak konstruktor a destruktor pracuje v javě spolu s příkladem. Další informace naleznete také v následujících článcích -

  1. Bitová manipulace v Javě
  2. Nejlepší Java IDE
  3. Hromadné řazení v Javě
  4. Co je rozhraní Java?
  5. Co je Constructor and Destructor v C ++?
  6. Příklady implementace řazení haldy v Pythonu
  7. Průvodce Destructorem v PHP s příklady

Kategorie: