Потоки (Threads) в Java. Часть 1.
Тема многопоточности очень важна в мире Java разработки. Давайте немного коснемся этой области для общего понимания, что это, зачем и как выглядит.
Потоки (Threads) - это мощный инструмент в Java, который позволяет выполнять задачи параллельно. Это особенно важно в современной разработке, где эффективное использование ресурсов процессора становится ключевым фактором.
Почему потоки важны?
1) Параллелизм
Параллельное выполнение задач позволяет улучшить производительность приложения, особенно на многоядерных процессорах.
2) Отзывчивость
Потоки позволяют обрабатывать одновременно несколько задач, что делает ваше приложение более отзывчивым на действия пользователя. Иными словами приложение меньше тормозит.
3) Многозадачность
Мы можем создавать приложения, которые одновременно выполняют разные задачи, например, сетевые запросы, обработку данных и графический интерфейс.
Основные понятия потоков 💡
1) Поток (Thread) - это независимая последовательность выполнения кода в вашей программе.
2) Многозадачность - способность приложения выполнять несколько потоков одновременно.
3) Синхронизация - управление доступом к ресурсам и данным, чтобы избежать конфликтов и ошибок.
Рассмотрим практические примеры в следующем посте.
👩💻 Наш практический курс Java–разработчика
✅ JavaStart. Подписаться
Тема многопоточности очень важна в мире Java разработки. Давайте немного коснемся этой области для общего понимания, что это, зачем и как выглядит.
Потоки (Threads) - это мощный инструмент в Java, который позволяет выполнять задачи параллельно. Это особенно важно в современной разработке, где эффективное использование ресурсов процессора становится ключевым фактором.
Почему потоки важны?
1) Параллелизм
Параллельное выполнение задач позволяет улучшить производительность приложения, особенно на многоядерных процессорах.
2) Отзывчивость
Потоки позволяют обрабатывать одновременно несколько задач, что делает ваше приложение более отзывчивым на действия пользователя. Иными словами приложение меньше тормозит.
3) Многозадачность
Мы можем создавать приложения, которые одновременно выполняют разные задачи, например, сетевые запросы, обработку данных и графический интерфейс.
Основные понятия потоков 💡
1) Поток (Thread) - это независимая последовательность выполнения кода в вашей программе.
2) Многозадачность - способность приложения выполнять несколько потоков одновременно.
3) Синхронизация - управление доступом к ресурсам и данным, чтобы избежать конфликтов и ошибок.
Рассмотрим практические примеры в следующем посте.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7✍2🔥2⚡1😁1👨💻1
Какая из следующих структур данных в Java не является интерфейсом?
Anonymous Quiz
7%
List
11%
Map
6%
Set
56%
ArrayList
16%
Queue
5%
Посмотреть ответ
✍4👍2👨💻2🎉1
Потоки (Threads) в Java. Часть 2.
Создание и запуск потоков.
Чтобы создать и запустить поток в Java, мы можем использовать класс Thread или реализовать интерфейс Runnable.
Пример наследования от класса Thread на Картинке 1.
Пример использования интерфейса Runnable для создания и запуска потока на Картинке 2.
В этом примере создается класс MyRunnable, который реализует интерфейс Runnable. Затем создается объект myRunnable, который представляет этот класс. После этого создается новый поток thread, используя myRunnable в качестве задачи для выполнения. Запуск потока происходит с помощью метода start().
После запуска потока, выполнение главного потока программы не блокируется, и он продолжает выполняться параллельно с созданным потоком.
Так обеспечивается многопоточность.
Важные моменты 💡
1) Нужно избегать избыточного создания потоков. Разработчики для этой цели используют пулы потоков (ThreadPool), чтобы эффективно управлять ресурсами.
2) Нужно быть осторожным с синхронизацией. Неправильное использование может привести к гонкам данных и ошибкам.
3) Важно изучить библиотеку java.util.concurrent, которая предоставляет высокоуровневые абстракции для работы с потоками.
4) Важно помнить, что потоки могут вести себя непредсказуемо в многозадачных средах, поэтому тестировать их нужно внимательно.
Потоки - это важный аспект разработки на Java, и с их помощью мы можем создавать более эффективные и отзывчивые приложения. Не бойтесь экспериментировать и учиться новому! 🚀👨💻👩💻
👩💻 Наш практический курс Java–разработчика
✅ JavaStart. Подписаться
Создание и запуск потоков.
Чтобы создать и запустить поток в Java, мы можем использовать класс Thread или реализовать интерфейс Runnable.
Пример наследования от класса Thread на Картинке 1.
Пример использования интерфейса Runnable для создания и запуска потока на Картинке 2.
В этом примере создается класс MyRunnable, который реализует интерфейс Runnable. Затем создается объект myRunnable, который представляет этот класс. После этого создается новый поток thread, используя myRunnable в качестве задачи для выполнения. Запуск потока происходит с помощью метода start().
После запуска потока, выполнение главного потока программы не блокируется, и он продолжает выполняться параллельно с созданным потоком.
Так обеспечивается многопоточность.
Важные моменты 💡
1) Нужно избегать избыточного создания потоков. Разработчики для этой цели используют пулы потоков (ThreadPool), чтобы эффективно управлять ресурсами.
2) Нужно быть осторожным с синхронизацией. Неправильное использование может привести к гонкам данных и ошибкам.
3) Важно изучить библиотеку java.util.concurrent, которая предоставляет высокоуровневые абстракции для работы с потоками.
4) Важно помнить, что потоки могут вести себя непредсказуемо в многозадачных средах, поэтому тестировать их нужно внимательно.
Потоки - это важный аспект разработки на Java, и с их помощью мы можем создавать более эффективные и отзывчивые приложения. Не бойтесь экспериментировать и учиться новому! 🚀👨💻👩💻
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7✍2🔥2👨💻1
Сеттеры (setters) геттеры (getters) в Java. Часть 1.
Setters и Getters - это методы, которые используются для установки и получения значений членов (полей) объектов. Давайте рассмотрим, как они работают и почему они важны.
Setters:
Сеттеры - это методы, которые используются для установки значения поля объекта. Они обычно начинаются с префикса "set", за которым следует имя поля с большой буквы. Сеттеры позволяют контролировать доступ к полям и устанавливать определенные правила для изменения значений. Пример на Картинке 1.
public class Person {
private String name;
public void setName(String name) {
// Здесь можно добавить проверки на валидность имени
this.name = name;
}
}
Getters:
Геттеры - это методы, которые используются для получения значения поля объекта. Они начинаются с префикса "get", за которым следует имя поля с большой буквы. Геттеры позволяют другим частям кода получать доступ к данным объекта, при этом обеспечивают контроль доступа. Пример также на Картинке 1.
public class Person {
private String name;
public String getName() {
return name;
}
}
Зачем использовать сеттеры и геттеры:
1) Инкапсуляция
Сеттеры и геттеры позволяют скрыть детали реализации и изменения полей объекта. Это помогает обеспечить инкапсуляцию данных.
2) Контроль доступа
С помощью сеттеров и геттеров вы можете установить правила доступа к данным объекта, например, проверки на валидность.
3) Гибкость
Сеттеры и геттеры позволяют легко изменять реализацию класса без изменения интерфейса.
Пример использования сеттеров и геттеров на Картинке 2.
В этом примере мы создали объект класса Person, установили его имя с помощью сеттера setName() и получили имя с помощью геттера getName().
Сеттеры и геттеры являются важной частью объектно-ориентированного программирования в Java и помогают обеспечить правильную инкапсуляцию и контроль доступа к данным объекта.
👩💻 Наш практический курс Java–разработчика
✅ JavaStart. Подписаться
Setters и Getters - это методы, которые используются для установки и получения значений членов (полей) объектов. Давайте рассмотрим, как они работают и почему они важны.
Setters:
Сеттеры - это методы, которые используются для установки значения поля объекта. Они обычно начинаются с префикса "set", за которым следует имя поля с большой буквы. Сеттеры позволяют контролировать доступ к полям и устанавливать определенные правила для изменения значений. Пример на Картинке 1.
public class Person {
private String name;
public void setName(String name) {
// Здесь можно добавить проверки на валидность имени
this.name = name;
}
}
Getters:
Геттеры - это методы, которые используются для получения значения поля объекта. Они начинаются с префикса "get", за которым следует имя поля с большой буквы. Геттеры позволяют другим частям кода получать доступ к данным объекта, при этом обеспечивают контроль доступа. Пример также на Картинке 1.
public class Person {
private String name;
public String getName() {
return name;
}
}
Зачем использовать сеттеры и геттеры:
1) Инкапсуляция
Сеттеры и геттеры позволяют скрыть детали реализации и изменения полей объекта. Это помогает обеспечить инкапсуляцию данных.
2) Контроль доступа
С помощью сеттеров и геттеров вы можете установить правила доступа к данным объекта, например, проверки на валидность.
3) Гибкость
Сеттеры и геттеры позволяют легко изменять реализацию класса без изменения интерфейса.
Пример использования сеттеров и геттеров на Картинке 2.
В этом примере мы создали объект класса Person, установили его имя с помощью сеттера setName() и получили имя с помощью геттера getName().
Сеттеры и геттеры являются важной частью объектно-ориентированного программирования в Java и помогают обеспечить правильную инкапсуляцию и контроль доступа к данным объекта.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6✍4👨💻3🔥1
Сеттеры (setters) геттеры (getters) в Java. Часть 2.
Автоматическая генерация геттеров и сеттеров с Lombok в Java.
В разработке на Java есть много стандартных задач, которые приходится выполнять снова и снова. Одной из таких задач является создание геттеров и сеттеров для полей класса. Вместо ручного написания этих методов, мы можем использовать библиотеку Lombok, которая автоматически создает их за нас. Давайте поговорим об этом подробнее.
Что такое Lombok:
Project Lombok - это библиотека для Java, которая позволяет сократить количество бойлерплейта (шаблонного кода) в нашем проекте. Она предоставляет аннотации для генерации различных методов, таких как геттеры, сеттеры, конструкторы и другие.
Генерация геттеров и сеттеров с Lombok:
Для генерации геттеров и сеттеров с помощью Lombok, нам нужно сделать следующее:
1) Добавить библиотеку Lombok в зависимости нашего проекта.
2) Аннотировать класс аннотацией @Data. Эта аннотация включает автоматическую генерацию геттеров, сеттеров, equals(), hashCode() и других методов.
3) Определить поля класса с модификатором доступа private.
import lombok.Data;
@Data
public class Person {
private String name;
private int age;
}
Теперь у нас есть класс Person, и Lombok автоматически создал геттеры и сеттеры для полей name и age. Это сильно упрощает работу с классами и делает код более чистым и читаемым.
Преимущества Lombok:
1) Сокращение объема кода
Lombok позволяет избежать написания множества стандартного шаблонного кода.
2) Улучшение читаемости
Генерированный код Lombok более чист и понятен.
3) Ускорение разработки
Мы экономим время на написании рутиных методов.
Библиотека Lombok - это мощный инструмент для улучшения процесса разработки на Java. Она помогает сделать наш код более компактным и читаемым, а также ускоряет разработку.
👩💻 Наш практический курс Java–разработчика
✅ JavaStart. Подписаться
Автоматическая генерация геттеров и сеттеров с Lombok в Java.
В разработке на Java есть много стандартных задач, которые приходится выполнять снова и снова. Одной из таких задач является создание геттеров и сеттеров для полей класса. Вместо ручного написания этих методов, мы можем использовать библиотеку Lombok, которая автоматически создает их за нас. Давайте поговорим об этом подробнее.
Что такое Lombok:
Project Lombok - это библиотека для Java, которая позволяет сократить количество бойлерплейта (шаблонного кода) в нашем проекте. Она предоставляет аннотации для генерации различных методов, таких как геттеры, сеттеры, конструкторы и другие.
Генерация геттеров и сеттеров с Lombok:
Для генерации геттеров и сеттеров с помощью Lombok, нам нужно сделать следующее:
1) Добавить библиотеку Lombok в зависимости нашего проекта.
2) Аннотировать класс аннотацией @Data. Эта аннотация включает автоматическую генерацию геттеров, сеттеров, equals(), hashCode() и других методов.
3) Определить поля класса с модификатором доступа private.
import lombok.Data;
@Data
public class Person {
private String name;
private int age;
}
Теперь у нас есть класс Person, и Lombok автоматически создал геттеры и сеттеры для полей name и age. Это сильно упрощает работу с классами и делает код более чистым и читаемым.
Преимущества Lombok:
1) Сокращение объема кода
Lombok позволяет избежать написания множества стандартного шаблонного кода.
2) Улучшение читаемости
Генерированный код Lombok более чист и понятен.
3) Ускорение разработки
Мы экономим время на написании рутиных методов.
Библиотека Lombok - это мощный инструмент для улучшения процесса разработки на Java. Она помогает сделать наш код более компактным и читаемым, а также ускоряет разработку.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7✍2🔥2👨💻1
Иммутабельность в Java. Часть 1.
Вопрос об иммутабельности очень часто задается на собеседованиях от уровня junior до middle. Давайте разбираться.
Что такое иммутабельность?
Иммутабельность (immutable) - это концепция, согласно которой объекты не могут быть изменены после своего создания. В Java это означает, что данные объекта остаются неизменными после их инициализации.
Преимущества иммутабельных объектов:
1) Потокобезопасность
Иммутабельные объекты могут использоваться в многопоточных приложениях без необходимости синхронизации, так как их состояние не меняется.
2) Предсказуемость
Поскольку иммутабельные объекты не могут изменяться, они предсказуемы и надежны.
3) Безопасность
Иммутабельные объекты труднее подвергнуть атакам и ошибкам, таким как неправильные изменения данных.
Пример иммутабельного класса объекта в Java на Картинке.
В этом примере класс ImmutablePerson является иммутабельным, так как его состояние (поля name и age) не может быть изменено после создания объекта.
Советы для использования иммутабельности:
1) Предпочитайте использование иммутабельных объектов, когда это возможно, особенно для объектов, которые представляют состояние или данные.
2) Вместо изменения иммутабельных объектов создавайте новые объекты с обновленными значениями.
3) Избегайте публичных сеттеров (setter methods) в классах, чтобы предотвратить изменение состояния объекта.
Иммутабельность - это важная концепция в Java, которая способствует созданию надежных и безопасных приложений. Понимание и использование этой концепции может значительно улучшить качество вашего кода.
👩💻 Наш практический курс Java–разработчика
✅ JavaStart. Подписаться
Вопрос об иммутабельности очень часто задается на собеседованиях от уровня junior до middle. Давайте разбираться.
Что такое иммутабельность?
Иммутабельность (immutable) - это концепция, согласно которой объекты не могут быть изменены после своего создания. В Java это означает, что данные объекта остаются неизменными после их инициализации.
Преимущества иммутабельных объектов:
1) Потокобезопасность
Иммутабельные объекты могут использоваться в многопоточных приложениях без необходимости синхронизации, так как их состояние не меняется.
2) Предсказуемость
Поскольку иммутабельные объекты не могут изменяться, они предсказуемы и надежны.
3) Безопасность
Иммутабельные объекты труднее подвергнуть атакам и ошибкам, таким как неправильные изменения данных.
Пример иммутабельного класса объекта в Java на Картинке.
В этом примере класс ImmutablePerson является иммутабельным, так как его состояние (поля name и age) не может быть изменено после создания объекта.
Советы для использования иммутабельности:
1) Предпочитайте использование иммутабельных объектов, когда это возможно, особенно для объектов, которые представляют состояние или данные.
2) Вместо изменения иммутабельных объектов создавайте новые объекты с обновленными значениями.
3) Избегайте публичных сеттеров (setter methods) в классах, чтобы предотвратить изменение состояния объекта.
Иммутабельность - это важная концепция в Java, которая способствует созданию надежных и безопасных приложений. Понимание и использование этой концепции может значительно улучшить качество вашего кода.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6✍2👨💻2
Какая из следующих коллекций в Java представляет собой неупорядоченную коллекцию без дубликатов?
Anonymous Quiz
7%
ArrayList
9%
TreeMap
75%
HashSet
5%
LinkedList
3%
Посмотреть ответ
👍8🎉2✍1
Иммутабельность в Java. Часть 2.
В Java иммутабельным или immutable классом называется класс, который после инициализации не может изменить свое состояние. То есть если в коде есть ссылка на экземпляр иммутабельного класса, то любые изменения в нем приводят к созданию нового экземпляра.
Immutable класс должен соответствовать следующем критериям:
– Должен быть объявлен как final. Чтобы запретить от него наследоваться.
– Все поля класса должны быть приватными в соответствии с принципами инкапсуляции.
– Для корректного создания экземпляра в нем должны быть параметризованные конструкторы, через которые осуществляется первоначальная инициализация полей класса.
– Для исключения возможности изменения состояния после инстанцирования, в классе не должно быть сеттеров.
– Для полей-коллекций необходимо делать глубокие копии, чтобы гарантировать их неизменность.
Из того, что железобетонно нужно запомнить — все классы-обертки над примитивными типами — неизменяемые. Integer, Byte, Character, Short, Boolean, Long, Double, Float — все эти классы создают Immutable объекты.
👩💻 Наш практический курс Java–разработчика
✅ JavaStart. Подписаться
В Java иммутабельным или immutable классом называется класс, который после инициализации не может изменить свое состояние. То есть если в коде есть ссылка на экземпляр иммутабельного класса, то любые изменения в нем приводят к созданию нового экземпляра.
Immutable класс должен соответствовать следующем критериям:
– Должен быть объявлен как final. Чтобы запретить от него наследоваться.
– Все поля класса должны быть приватными в соответствии с принципами инкапсуляции.
– Для корректного создания экземпляра в нем должны быть параметризованные конструкторы, через которые осуществляется первоначальная инициализация полей класса.
– Для исключения возможности изменения состояния после инстанцирования, в классе не должно быть сеттеров.
– Для полей-коллекций необходимо делать глубокие копии, чтобы гарантировать их неизменность.
Из того, что железобетонно нужно запомнить — все классы-обертки над примитивными типами — неизменяемые. Integer, Byte, Character, Short, Boolean, Long, Double, Float — все эти классы создают Immutable объекты.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6✍3🔥2👨💻2
Please open Telegram to view this post
VIEW IN TELEGRAM
😁14❤1✍1
Иммутабельность в Java. Часть 3.1. Классы обертки примитивных типов данных.
В языке программирования Java существует набор классов-оберток (wrappers), таких как String, Double, Integer, Long, Byte, Float, Boolean, Character, Short, предназначенных для работы с примитивными типами данных. Эти классы позволяют преобразовывать примитивные значения в объекты (классы-обертки) и выполнять различные операции над ними.
В этом посте мы рассмотрим классы-обертки для примитивных типов данных, их основные методы и связь с концепцией иммутабельности.
Классы-обертки в Java являются иммутабельными, что означает, что их значения нельзя изменить после создания. Все операции, такие как арифметические действия, создают новые объекты того или иного класса.
1) Integer (java.lang.Integer)
Описание: Класс Integer представляет 32-битное целое число (как и примитивный тип int).
Пример использования:
Integer num = 42;
int primitiveNum = num.intValue();
Иммутабельность: Класс Integer является иммутабельным, что означает, что его значение нельзя изменить после создания. Все операции, такие как арифметические действия, создают новые объекты Integer.
2) Long (java.lang.Long)
Описание: Класс Long представляет 64-битное целое число (как и примитивный тип long).
Пример использования:
Long bigNum = 1234567890L;
long primitiveBigNum = bigNum.longValue();
Иммутабельность: Класс Long также является иммутабельным и не позволяет изменять свое значение.
3) Double (java.lang.Double)
Описание: Класс Double представляет 64-битное число с плавающей запятой (как и double).
Пример использования:
Double value = 3.14159265359;
double primitiveValue = value.doubleValue();
Иммутабельность: Класс Double тоже не изменяет свое значение после создания.
Рассмотрим другие типы классов-оберток в следующем посте.
👩💻 Наш практический курс Java–разработчика
✅ JavaStart. Подписаться
В языке программирования Java существует набор классов-оберток (wrappers), таких как String, Double, Integer, Long, Byte, Float, Boolean, Character, Short, предназначенных для работы с примитивными типами данных. Эти классы позволяют преобразовывать примитивные значения в объекты (классы-обертки) и выполнять различные операции над ними.
В этом посте мы рассмотрим классы-обертки для примитивных типов данных, их основные методы и связь с концепцией иммутабельности.
Классы-обертки в Java являются иммутабельными, что означает, что их значения нельзя изменить после создания. Все операции, такие как арифметические действия, создают новые объекты того или иного класса.
1) Integer (java.lang.Integer)
Описание: Класс Integer представляет 32-битное целое число (как и примитивный тип int).
Пример использования:
Integer num = 42;
int primitiveNum = num.intValue();
Иммутабельность: Класс Integer является иммутабельным, что означает, что его значение нельзя изменить после создания. Все операции, такие как арифметические действия, создают новые объекты Integer.
2) Long (java.lang.Long)
Описание: Класс Long представляет 64-битное целое число (как и примитивный тип long).
Пример использования:
Long bigNum = 1234567890L;
long primitiveBigNum = bigNum.longValue();
Иммутабельность: Класс Long также является иммутабельным и не позволяет изменять свое значение.
3) Double (java.lang.Double)
Описание: Класс Double представляет 64-битное число с плавающей запятой (как и double).
Пример использования:
Double value = 3.14159265359;
double primitiveValue = value.doubleValue();
Иммутабельность: Класс Double тоже не изменяет свое значение после создания.
Рассмотрим другие типы классов-оберток в следующем посте.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4✍2🔥2❤1
Иммутабельность в Java. Часть 3.2. Классы обертки примитивных типов данных.
Продолжаем наш обзор классов-оберток над примитивными типами данных в Java:
4) Float (java.lang.Float)
Описание: Класс Float представляет 32-битное число с плавающей запятой (float).
Пример использования:
Float floatValue = 2.71828f;
float primitiveFloatValue = floatValue.floatValue();
Иммутабельность: Класс Float также является иммутабельным.
5) Boolean (java.lang.Boolean)
Описание: Класс Boolean представляет логическое значение (true или false).
Пример использования:
Boolean flag = true;
boolean primitiveFlag = flag.booleanValue();
Иммутабельность: Класс Boolean является иммутабельным и не изменяет свое значение.
6) Character (java.lang.Character)
Описание: Класс Character представляет символ Unicode (как и примитив char).
Пример использования:
Character letter = 'A';
char primitiveLetter = letter.charValue();
Иммутабельность: Класс Character также является иммутабельным.
7) Byte (java.lang.Byte)
Описание: Класс Byte представляет 8-битное целое число (byte).
Пример использования:
Byte smallNumber = 99;
byte primitiveSmallNumber = smallNumber.byteValue();
Иммутабельность: Класс Byte также является иммутабельным.
8) Short (java.lang.Short)
Описание: Класс Short представляет 16-битное целое число (short).
Пример использования:
Short smallValue = 1000;
short primitiveSmallValue = smallValue.shortValue();
Иммутабельность: Класс Short также не изменяет свое значение после создания.
Заключение.
Классы-обертки примитивных типов данных в Java являются иммутабельными. Это означает, что после создания объекта класса-обертки его значение не может быть изменено. Эта особенность позволяет более надежно работать с данными и избегать нежелательных побочных эффектов. Также классы-обертки используются для хранения объектов в различных коллекциях, например List<String> или Map<Integer, String> и др.
👩💻 Наш практический курс Java–разработчика
✅ JavaStart. Подписаться
Продолжаем наш обзор классов-оберток над примитивными типами данных в Java:
4) Float (java.lang.Float)
Описание: Класс Float представляет 32-битное число с плавающей запятой (float).
Пример использования:
Float floatValue = 2.71828f;
float primitiveFloatValue = floatValue.floatValue();
Иммутабельность: Класс Float также является иммутабельным.
5) Boolean (java.lang.Boolean)
Описание: Класс Boolean представляет логическое значение (true или false).
Пример использования:
Boolean flag = true;
boolean primitiveFlag = flag.booleanValue();
Иммутабельность: Класс Boolean является иммутабельным и не изменяет свое значение.
6) Character (java.lang.Character)
Описание: Класс Character представляет символ Unicode (как и примитив char).
Пример использования:
Character letter = 'A';
char primitiveLetter = letter.charValue();
Иммутабельность: Класс Character также является иммутабельным.
7) Byte (java.lang.Byte)
Описание: Класс Byte представляет 8-битное целое число (byte).
Пример использования:
Byte smallNumber = 99;
byte primitiveSmallNumber = smallNumber.byteValue();
Иммутабельность: Класс Byte также является иммутабельным.
8) Short (java.lang.Short)
Описание: Класс Short представляет 16-битное целое число (short).
Пример использования:
Short smallValue = 1000;
short primitiveSmallValue = smallValue.shortValue();
Иммутабельность: Класс Short также не изменяет свое значение после создания.
Заключение.
Классы-обертки примитивных типов данных в Java являются иммутабельными. Это означает, что после создания объекта класса-обертки его значение не может быть изменено. Эта особенность позволяет более надежно работать с данными и избегать нежелательных побочных эффектов. Также классы-обертки используются для хранения объектов в различных коллекциях, например List<String> или Map<Integer, String> и др.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
✍4👨💻3👍2🔥1