Назад к вопросам
Intern
67
questionbank
Какие типы данных существуют в Java?
Sobes Copilot
Получайте ответы в реальном времени
Ответ от нейросети
sobes.tech AI
В Java существует два основных типа данных:
-
Примитивные типы данных (Primitive Data Types): Хранят простые значения. Их размер и диапазон предопределены JLS (Java Language Specification).
- Логический:
boolean(хранитtrueилиfalse). - Целочисленные:
byte(1 байт, от -128 до 127)short(2 байта, от -32,768 до 32,767)int(4 байта, от -2^31 до 2^31-1)long(8 байт, от -2^63 до 2^63-1)char(2 байта, хранит один символ в кодировке Unicode)
- С плавающей точкой:
float(4 بايта, одинарная точность)double(8 بايтов, двойная точность)
- Логический:
-
Ссылочные типы данных (Reference Data Types): Хранят ссылки (адреса) на объекты в памяти. Включают предопределенные классы Java, массивы и созданные пользователем классы, интерфейсы и перечисления.
- Классы (
class) - Интерфейсы (
interface) - Перечисления (
enum) - Массивы (
array)
- Классы (
Примеры:
// Примитивные типы
int count = 10;
boolean isValid = true;
char initial = 'J';
double price = 99.99;
// Ссылочные типы
String name = "Java"; // String - это класс
int[] numbers = {1, 2, 3}; // Массив
Object obj = new Object(); // Класс Object
Отличия:
| Признак | Примитивные типы | Ссылочные типы |
|---|---|---|
| Хранение | Фактическое значение | Ссылка (адрес) на объект в памяти |
| Значение по умолчанию | Зависит от типа (0, false, '\u0000') | null |
| Размер | Фиксированный | Зависит от объекта и платформы JVM |
| Работа с памятью | Размещаются в стеке (обычно) | Объекты размещаются в хипе, ссылки в стеке |