Вступ до конструктора та деструктора на Java

Наступна стаття Конструктор та Destructor на Java надає детальний контур створення конструктора та деструктора на Java. Кожна мова програмування має таке поняття, яке називається конструктором та деструктором. Java - об'єктно-орієнтована мова програмування. Якщо ви знаєте об'єктно-орієнтовані концепції, то вам буде вигідніше зрозуміти це. Конструктор - це те, що ініціалізує об'єкти, а деструктори руйнують цю ініціалізацію. У Java є автоматичне збирання сміття, яке використовувало алгоритм відмітки та зачистки.

Що таке конструктор і деструктор на Java?

Конструктор використовується для ініціалізації змінної, що означає, що вона виділяє пам'ять для того ж самого конструктора. Конструктор - це не що інше, як автоматична ініціалізація об'єкта. Щоразу, коли програма створює об'єкт, конструктор викликається автоматично. Вам не потрібно чітко викликати цей метод. Destructor використовується для звільнення пам'яті, виділеної під час ініціалізації. Як правило, у Java нам не потрібно чітко викликати деструктора. У Java є функція автоматичного вивезення сміття.

Навіщо нам потрібні конструктор і деструктор на Java?

Конструктор і деструктор в основному використовуються для ефективного управління розподілом пам’яті та де-розподілом. Конструктор і деструктор виконують дуже важливу роль у будь-якій мові програмування, ініціалізуючи і знищуючи його після використання, щоб звільнити простір пам'яті.

Як працює конструктор і деструктор на Java

Конструктор - це лише метод у Java. Який має те саме ім'я, що і назва класу. метод конструктора не має до нього жодного типу повернення.

Подивіться на наступний приклад для більшої ясності:

class Employee (
Employee() (
)
)

Якщо ви бачите у наведеному вище прикладі, ми не дали жодного типу повернення, наприклад, int або void методу, який має те саме ім'я, що і ім'я класу.

В основному використовується для ініціалізації об'єкта. Коли ми створюємо об'єкт класу в той час, конструктор викликається.

Це буде зрозуміліше із наступним фрагментом коду.

Як створити конструктори та деструктори в java?

Подивіться на наступний приклад

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

Типи конструктора

Існує два типи конструкторів залежно від типу, який ми можемо додавати та видаляти змінні.

1. Конструктор за замовчуванням

2. Параметризований конструктор

З цим ми також збираємось перевантажувати конструктор.

1. Конструктор за замовчуванням

Це єдиний тип конструктора. За замовчуванням без будь-яких параметрів цей конструктор має місце. Цей конструктор не має в ньому жодних параметрів.

Приклад:

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

2. Параметризований конструктор

Як випливає з назви, параметризований конструктор має деякі параметри або аргументи на момент ініціалізації об'єкта.

Приклад:

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

Вихід:

java Cal

Площа площі 200

Тепер настав час поговорити про перевантаження конструктора в java. Це означає, що мати декілька конструкторів з різними параметрами. Тож з цим кожен конструктор може виконувати різні завдання. Іноді відповідно до вимоги нам потрібно ініціалізувати конструктори різними способами.

Приклад

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

Вихід:

Дати назви продукту

Кількість товару - 500

Ціна товару - 50

Назва продукту cashu

Кількість товару - 80

Ціна товару - 800

Спробуйте вищевказану програму, і вам буде зрозуміло, що саме відбувається з перевантаженням конструктора.

Деструктор

Перш ніж розпочати розмову про деструктор, дозвольте мені сказати, що у Java немає деструктора. Деструктор є мовою програмування на C ++. Якщо ми говоримо про Java, то в java є функція, яка називається автоматичним збирачем сміття. Які звільняють динамічно виділену пам'ять, коли немає ніякого використання. Ця концепція дуже важлива, і ви можете дізнатися більше про цей збір сміття в java.

  • Java використовує техніку збирання одягу для розподілу пам'яті автоматично.
  • Немає необхідності в явному використанні деструкторів типу C ++.
  • Для розподілу пам'яті в java у нас немає функції malloc, як у програмуванні на C.
  • Такий самий процес розподілу пам'яті виконує новий оператор в java.
  • нове ключове слово виділяє простір пам’яті для об’єкта в купі пам’яті.
  • На момент виконання програми нове ключове слово виділяє об’єкт деякої пам’яті. Кінцевий користувач повинен турбуватися з цього приводу, оскільки програма обробляє пам'ять. У той час, коли об’єкт, який використовується в програмах, виконаних з роботою, пам'ять, що використовується для об'єкта, використовується для іншого завдання. Цей процес ефективного використання пам’яті є завданням збирання сміття в Java.

Давайте тоді поговоримо про деструктор. Як ми знаємо, у Java не існує деструктора, оскільки він доопрацював () метод для цього. Нижче наведено деякі ключові моменти, які слід зазначити.

Довершити () методи

  • Метод доопрацювання - це робота як деструктор, так і протилежний конструктору, як ми бачили раніше.
  • Як правило, метод доопрацювання використовується для видалення об'єкта.
  • Для використання цього методу ми повинні чітко визначити цей метод у java.
  • Метод завершення починає працювати після вивезення сміття з його роботи.
  • Це просто означає, що після звільнення простору пам’яті шляхом переміщення простору пам’яті з об’єктів є ймовірність того, що використання пам’яті все ще існує з іншими речами, такими як шрифти тощо, щоб видалити цей простір пам’яті або звільнити цей простір, ми використовуємо метод finalize ().

Висновок

Конструктор і деструктор (збирання сміття в Java) - це дуже важливі речі, які слід зрозуміти будь-якою мовою програмування, оскільки це початок, коли ви можете насправді зрозуміти, як це робиться на задньому плані для управління простором пам'яті.

Рекомендовані статті

Це посібник для конструктора та деструктора на Java. Тут ми обговорюємо вступ до конструктора та деструктора, навіщо він нам потрібен і як конструктор і деструктор працюють у Java разом із прикладом. Ви також можете переглянути наступні статті, щоб дізнатися більше -

  1. Біт-маніпуляція на Java
  2. Кращий Java IDE
  3. Сортування купи в Java
  4. Що таке інтерфейс Java?
  5. Що таке конструктор та деструктор у C ++?
  6. Приклади для здійснення сортування купи в Python
  7. Посібник з Destructor в PHP з прикладами