Узнайте, какой
вы программист?
Проверьте себя в Бинго от Хекслета, получите звание и приятные бонусы
Главная | Все статьи | Код

Работа с типами данных в Java: от примитивов до объектов

Java Время чтения статьи ~4 минуты
Работа с типами данных в Java: от примитивов до объектов главное изображение

В Java существует два основных типа данных: примитивные и объектные, они же ссылочные. Примитивные типы в Java встроены в сам язык и служат базовыми строительными блоками для хранения простых значений. Объектные типы данных создаются программистом и представляют собой более сложные структуры, которые включают в себя объекты.

Напишите телеграм бота на Java за 2 дня на бесплатном интенсиве

Записаться на интенсив

Java — язык строгой типизации. Это значит, что каждый вид данных относится к конкретному типу, что помогает избежать ошибок и сделать код более надежным. Рассмотрим типы в Java подробнее.

Примитивные типы в Java

Примитивы — это простейшие типы данных, встроенные в язык Java. Они представляют собой неразрывные значения и не являются объектами. Каждый примитивный тип в Java имеет фиксированный размер, что позволяет планировать потребление памяти и производительность. Примитивы используются для хранения и обработки самых простых значений, таких как числа, символы и логические значения.

Основные примитивные типы

  1. Целочисленные типы:
    • byte: 8-битное целое число со знаком. Диапазон значений от -128 до 127;
    • short: 16-битное целое число со знаком. Диапазон значений от -32 768 до 32 767;
    • int: 32-битное целое число со знаком. Диапазон значений от -2 147 483 648 до 2 147 483 647;
    • long: 64-битное целое число со знаком. Диапазон значений от -9 223 372 036 854 775 808 до 9 223 372 036 854 775 807.
  2. Типы чисел с плавающей точкой:
    • float: 32-битное число с плавающей точкой. Диапазон значений от 1,4e-45 до 3,4e+38;
    • double: 64-битное число с плавающей точкой. Диапазон значений от 4,9e-324 до 1,8e+308.
  3. Логический тип:
    • boolean: может принимать значения true или false.
  4. Символьный тип:
    • char: 16-битный символ Unicode. Диапазон значений от '\u0000' (0) до '\uffff' (65 535).

Использование примитивов в Java

Примитивные типы данных могут участвовать в арифметических и логических операциях, использоваться для контроля выполнения программы через условные операторы и циклы.

Объектные типы в Java

Объектные типы данных, или ссылочные типы, представляют собой более сложные структуры данных. В отличие от примитивов, объекты могут хранить данные разного типа и предоставлять методы для их обработки. Каждый объект создается на основе класса, который определяет его структуру и поведение. Объекты могут включать в себя другие объекты и примитивные типы, что позволяет создавать сложные структуры данных.

Java-разработчик — с нуля до трудоустройства за 10 месяцев
  • Постоянная поддержка от наставника и учебного центра
  • Помощь с трудоустройством
  • Готовое портфолио к концу обучения
  • Практика с первого урока

Вы получите именно те инструменты и навыки, которые позволят вам найти работу

Узнать больше

Классы-обертки (Wrapper Classes)

Классы-обертки позволяют использовать примитивные типы данных как объекты. Java предоставляет классы-обертки для каждого примитивного типа: Integer, Float, Double, Boolean, Character и другие. Это позволяет использовать примитивные типы в контекстах, где требуются объекты, например в коллекциях.

Автоупаковка (Autoboxing) и распаковка (Unboxing)

Java поддерживает автоупаковку и распаковку, что означает автоматическое преобразование между примитивными типами и их соответствующими объектами-классами. Это упрощает код и делает его более читабельным.

Сравнение примитивных типов и объектов

Память и производительность

Примитивные типы данных занимают меньше памяти и обеспечивают лучшую производительность по сравнению с объектами, так как они не требуют дополнительной памяти для хранения информации о классе и методах. Объекты, в свою очередь, занимают больше места в памяти, но могут предоставлять больше функциональности за счет методов и полей.

Методы и функциональность

Объектные типы данных предоставляют методы для выполнения различных операций над данными. Например, класс String предоставляет методы для работы со строками, такие как length(), charAt(), substring() и многие другие.

Напишите телеграм бота на Java за 2 дня на бесплатном интенсиве

Записаться на интенсив

Использование объектных типов в Java

Объектные типы данных широко используются для создания сложных структур данных и взаимодействия с другими объектами в программе. Они могут включать в себя данные различных типов и предоставлять методы для их обработки.

Рассмотрим простой пример, где используются и примитивные типы, и ссылочные.

public class Example {

public static void main(String[] args) {

int id = 101; // Примитивный тип

String name = "Alice"; // Ссылочный тип

Double gpa = 3.75; // Ссылочный тип (класс-обертка для примитива)

System.out.println("ID: " + id);

System.out.println("Name: " + name);

System.out.println("GPA: " + gpa);

}

}

Заключение

Разработчику не обязательно помнить все типы в Java наизусть, но важно понимать, как они работают и чем отличаются. Это позволяет писать более эффективный и надежный код, используя преимущества примитивных типов для производительности и объектных типов для функциональности. Если вас интересуют другие базовые понятия в языке Java, рекомендуем курс «Основы Java» от компании Хекслет.

Рекомендуемые программы
профессия
от 6 300 ₽ в месяц
Осваивайте разработку веб-страниц, оживляйте дизайн макетов, публикуйте сайты и приложения. Отслеживайте ошибки в интерфейсе и устраняйте их
10 месяцев
с нуля
Старт 19 сентября
профессия
от 6 300 ₽ в месяц
Обучитесь разработке бэкенда сайтов и веб-приложений — серверной части, которая отвечает за логику и базы данных
10 месяцев
с нуля
Старт 19 сентября
профессия
от 6 183 ₽ в месяц
Выполняйте ручное тестирование веб-приложений, находите ошибки в продукте. Узнайте все о тест-дизайне.
4 месяца
с нуля
Старт 19 сентября
профессия
от 6 300 ₽ в месяц
Научитесь разработке веб-приложений, сайтов и программного обеспечения на языке Java, программируйте и используйте структуры данных
10 месяцев
с нуля
Старт 19 сентября
профессия
от 5 025 ₽ в месяц
новый
Собирайте, анализируйте и интерпретируйте данные, улучшайте бизнес-процессы и продукт компании. Обучитесь работе с библиотеками Python
9 месяцев
с нуля
Старт 19 сентября
профессия
от 6 300 ₽ в месяц
Занимайтесь созданием сайтов, веб-приложений, сервисов и их интеграцией с внутренними бизнес-системами на бекенд-языке PHP
10 месяцев
с нуля
Старт 19 сентября
профессия
от 5 840 ₽ в месяц
Создание веб-приложений со скоростью света
5 месяцев
c опытом
Старт 19 сентября
профессия
от 9 900 ₽ в месяц
Обучитесь разработке визуальной части сайта — фронтенда, а также реализации серверной — бэкенда. Освойте HTML, CSS, JavaScript
16 месяцев
с нуля
Старт 19 сентября
профессия
от 6 300 ₽ в месяц
Разработка бэкенд-компонентов для веб-приложений
10 месяцев
с нуля
Старт 19 сентября
профессия
новый
Организовывайте процесс автоматизации тестирования на проекте, обучитесь языку программирования JavaScript, начните управлять процессом тестирования
8 месяцев
c опытом
в разработке
Старт 19 сентября