logo

Довідкові типи даних у Java

Java пропонує два типи

Довідкові типи Java

У Java існує п’ять таких типів посилальних типів:

Тип посилання опис
Клас Це набір інструкцій. Він описує зміст об'єкта.
Масив Він забезпечує структуру даних фіксованого розміру, яка зберігає елементи одного типу.
Анотації Він надає спосіб пов’язати метадані з елементами програми.
Інтерфейс Він реалізований класами Java.
Перерахування Це особливий тип класу, безпечний для типів. Кожен елемент всередині переліку є екземпляром цього переліку.

Посилання проти примітивних типів даних

Тип посилання Примітивний тип
Він не визначений заздалегідь, окрім рядка. Він попередньо визначений у Java.
Усі типи посилань починаються з великої літери. Весь примітивний шрифт починається з малої літери.
Непримітивні типи мають однакові розміри. Розмір примітивного типу залежить від типу даних.
Він використовується для виклику або виклику методів. Ми не можемо викликати метод з примітивним типом.
Він може бути нульовим. Воно не може бути нульовим. Це завжди має цінність.
Прикладами довідкових типів даних є клас, масиви, рядок, інтерфейс тощо. Прикладами простих типів даних є int, float, double, Boolean, long тощо.
JVM виділяє 8 байт для кожної посилальної змінної за замовчуванням. Його розмір залежить від типу даних.
приклад : Демо d1; приклад : int num=78;

Розподіл пам'яті та збирання сміття

У Java, нове ключове слово використовується для створення екземпляр класу. Іншими словами, він створює екземпляр класу шляхом виділення пам'ять для нового об’єкта та повернення посилання на цю пам’ять. Об’єкти займають пам’ять у просторі купи Java. Ми також можемо використати ключове слово new для створення об'єкт масиву .

 ClassName objectName = new ClassName(); 

Якщо немає посилань на об’єкт, пам’ять, яка використовується цим об’єктом, може бути звільнена під час процесу збирання сміття.

Перетворення між примітивним типом і еталонним типом

Викликається перетворення примітивного типу в еталонний автобокс і викликається перетворення посилального типу на примітивний розпакування .

Порівняння еталонного типу

Ми також можемо порівняти еталонні типи в Java. Java надає два способи порівняння еталонних типів:

За допомогою оператора рівності (==).

Він порівнює місця пам’яті об’єктів. Якщо адреса пам’яті (посилання) обох об’єктів однакова, об’єкти є рівними. Зауважте, що він не порівнює вміст об’єкта. Наприклад:

 Demo d1 = new Demo('Atlanta'); //creating a reference of Demo class Demo d2 = d1; //assigning the reference d1 into d2 if(d1=d2) //comparing reference 

За допомогою методу String.equals().

Спосіб належить до Рядок клас. Це перекриває дорівнює() метод Об'єкт клас . Він також використовує оператор рівності (==) для порівняння еталонного типу. Наприклад, розглянемо такий фрагмент коду:

 String str1='JAVA'; String str2='JAVA'; String str3='java'; System.out.println(str1.equals(str2)); //returns true because content and case is same System.out.println(str1.equals(str3)); //returns false because case is not same 

Тип посилання на копіювання

Є дві можливості, коли ми копіюємо посилальні типи: створюється копія посилання на об’єкт або створюється фактична копія (створення нової копії) об’єкта.

У наступному прикладі ми призначили посилання на об’єкт. Якщо ми внесли будь-які зміни в об’єкт, це також відображатиме посилання, і навпаки.

 Sum s1 = new Sum(); Sum s2= s1;