Ú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 -
- Bitová manipulace v Javě
- Nejlepší Java IDE
- Hromadné řazení v Javě
- Co je rozhraní Java?
- Co je Constructor and Destructor v C ++?
- Příklady implementace řazení haldy v Pythonu
- Průvodce Destructorem v PHP s příklady