Ця стаття є дзеркальною статтею машинного перекладу, будь ласка, натисніть тут, щоб перейти до оригінальної статті.

Вид: 16754|Відповідь: 0

[Джерело] Базові типи даних, вбудовані в Java

[Копіювати посилання]
Опубліковано 07.04.2015 16:19:13 | | |
Типи даних — це абстрактні вирази локалій пам'яті. Програмісти можуть використовувати різноманітні типи даних: деякі визначаються мовами програмування, деякі — зовнішніми бібліотеками, а інші — програмістами. Багато мов програмування покладаються на конкретні типи комп'ютера та конкретні компільовані реалізації властивостей типів даних, такі як розмір слів і цілочисельних типів даних. З іншого боку, віртуальна машина Java відповідає за визначення всіх аспектів вбудованих типів даних. Це означає, що незалежно від того, наскільки низькорівневою операційною системою працює Java Virtual Machine (JVM), властивості типів даних залишаються абсолютно однаковими.

Прості типи даних
Прості типи даних — це типи даних, які більше не можна спростити, вбудовані типи даних, визначені мовами програмування, які представляють дійсні числа, символи та цілі числа. Більші, складніші типи даних можна визначити комбінацією простих типів даних. У більшості випадків прості типи даних мають апаратні аналоги. Наприклад, int-прості типи іноді зберігаються у 32-бітних апаратних регістрах. Java пропонує кілька класів простих типів даних, що представляють числа та символи.

Прості типи даних зазвичай поділяються на такі категорії: дійсні числа, цілі числа, символи та булеві числа. Ці категорії, у свою чергу, включають різноманітні прості типи. Наприклад, Java визначає два простих типи: float і double, які належать до категорії дійсних чисел, а інші чотири прості типи: byte, short, int і long — усі належать до цілочисельної категорії. Існує також простий тип персонажа, який приписується типу персонажа. Існує лише один простий тип булевої категорії: булева категорія. Таблиця A детально описує прості типи даних у Java.

Таблиця A: прості типи даних Java
Простий діапазон розмірів/точність шрифту
float 4 байти 32-бітний IEEE 754 з одиничною точністю
подвійна 8 байт 64-бітна IEEE 754 подвійна точність
Байт 1 байт від -128 до 127
- Короткі 2 байти — від 32 768 до 32 767
int 4 байти — від 2 147 483 648 до 2 147 483 647
Довгі 8 байт — 9 223 372 036 854 775 808 до 9 223 372 036 854 775 807
char 2 байти всього набору символів Unicode
булева 1-бітна Правда чи хибна

Прості типи даних у Java
Усі числові змінні в Java мають знаки, і Java не дозволяє довільне перетворення між типами даних. Можливе лише перетворення типів між числовими змінними. Наприклад, булева величина не може бути конвертована в інші типи даних, а інші типи даних — у булеві.

Оскільки прості типи даних Java точно визначені, а прямий доступ до пам'яті заборонений, розмір оператора в мові Java видаляється.

Прості типи даних Java не є об'єктами. Щоб застосувати об'єктно-орієнтований підхід до простих типів даних на Java, спочатку потрібно інкапсулювати їх у класи.

Пакет
Java також надає вбудовані класи інкапсуляції, такі як Byte, Short, Boolean, Character, Integer, Double, Float та Long. Ці обгорткові курси пропонують дуже інтуїтивний і практичний підхід. Наприклад, класи Byte, Float, Integer, Long і Double мають метод doubleValue(), який дозволяє конвертувати значення, збережені в екземплярах класу, у типи Double. Крім того, усі інкапсульовані класи надають метод статичного значенняOf(Strings) для конвертації заданого рядка у відповідний простий тип. Код у Listing A демонструє використання цих класів інкапсуляції.

Проста ініціалізація типів даних
У Java прості типи даних автоматично ініціалізуються як стандартні при оголошенні як членові змінні класу, якщо це не оголошено явно. Прості типи даних — це методи, які оголошують локальні змінні, що не ініціалізуються автоматично, і викликають у компілятора повідомлення про помилку, наприклад: «Змінна x могла не бути ініціалізована.» Таблиця B визначає значення за замовчуванням для простих типів даних у Java.
Таблиця B За замовчуванням для простих типів даних Java
тип
За промовчанням
булева
false
Байт
0
короткий
0
int
0
Довгий
0
Чар
′/u0000′
Поплавок
0.0
Подвійний
0.0

Стандартні значення для простих типів даних Java
Код у Listing B показує, що всі прості типи даних Java використовують членові змінні класу ініціалізації. Цей приклад також показує, що змінна int декларується локально в конструкторі класу ініціалізації. Без зміни наведеного вище коду компілятор видасть помилку під час компіляції наведеного коду.
Після того, як рядок коду, що спричинив проблему (код, що посилається на неініціалізовану змінну, що спричинила помилку), видаляється або коментується. Після успішної компіляції та виконання програми відображаються такі результати:

byte: 0
short: 0
int: 0
long: 0
float: 0.0
double: 0.0
char: 0
boolean: false
Ми також можемо явно ініціалізувати змінні елементів з іншими значеннями, як показано в наступному коді:
байт b = 5;
короткий s = 123;
int i = 1234;
довга l = 12345;
поплавок f = 123,45f;
подвійний d = 12345.678;
char c = ′A′;
булева z = істинна;

Резюме
Java визначає повний набір простих типів даних. Крім того, Java усуває апаратні та компіляторні залежності, які стають мовою, дозволяючи програмістам відволікати увагу на інші питання




Попередній:JDK, JRE, JVM відмінності та зв'язки
Наступний:Photoshop працює, будь ласка, видаліть і перевстановіть цей продукт, як вирішити код помилки 16?
Застереження:
Усе програмне забезпечення, програмні матеріали або статті, опубліковані Code Farmer Network, призначені лише для навчання та досліджень; Вищезазначений контент не повинен використовуватися в комерційних чи незаконних цілях, інакше користувачі несуть усі наслідки. Інформація на цьому сайті надходить з Інтернету, і спори щодо авторських прав не мають до цього сайту. Ви повинні повністю видалити вищезазначений контент зі свого комп'ютера протягом 24 годин після завантаження. Якщо вам подобається програма, будь ласка, підтримуйте справжнє програмне забезпечення, купуйте реєстрацію та отримайте кращі справжні послуги. Якщо є будь-яке порушення, будь ласка, зв'яжіться з нами електронною поштою.

Mail To:help@itsvse.com