JavaStart
926 subscribers
888 photos
26 videos
596 links
Учи Java вместе с нами!
Наша платформа с курсом - https://javastart.tech
Ютуб с обучающими видео - https://www.youtube.com/@javastart_tech
Download Telegram
Please open Telegram to view this post
VIEW IN TELEGRAM
💯4😁3👍1
Модификатор доступа static в Java. Часть 12.

Причины использовать статический внутренний класс:

– Если какой-то класс используются только в одном другом классе, то их можно сгруппировать, поместив в один общий класс. Это усиливает инкапсуляцию;

– Если вложенный класс не требует какого-либо доступа к членам экземпляра его класса, то лучше объявить его как статический, потому, что таким образом он не будет связан с внешним классом и, следовательно, будет более оптимальным, поскольку ему не потребуется память в куче или в стеке.

JavaStart. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
👍43👨‍💻3
Какая аннотация используется для обозначения того, что метод теста в JUnit 5?
Anonymous Quiz
0%
84%
@Test (из org.junit.jupiter.api)
3%
3%
Посмотреть ответ
3👍3🎉1
Модификатор доступа static в Java. Часть 13.

Ключевые моменты использования статического внутреннего класса:

1) Статические вложенные классы не имеют доступа к какому-либо члену экземпляра внешнего класса — он может получить к ним доступ только через ссылку на объект;

2) Статические вложенные классы могут получить доступ ко всем статическим членам внешнего класса, включая приватные;

3) Спецификация Java не позволяет объявлять класс верхнего уровня статическим. Только классы внутри других классов могут быть статическими;

4) По сути статический вложенный класс ничем не отличается от любого другого внутреннего класса за исключением того, что его объект не содержит ссылку на создавший его объект внешнего класса;

5) Для использования статических методов/переменных/классов нам не нужно создавать объект данного класса;

Яркий пример вложенного статического класса — HashMap.Entry, который предоставляет структуру данных внутри HashMap.

Стоит заметить, также как и любой другой внутренний класс, вложенные классы находятся в отдельном файле .class. Таким образом, если вы объявили пять вложенных классов в вашем главном классе, у вас будет 6 файлов с расширением .class

JavaStart. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
4👍3👨‍💻2
Please open Telegram to view this post
VIEW IN TELEGRAM
😁4💯3🔥2
В чём он не прав?

JavaStart. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
😁5👍3💯21
Модификатор доступа static в Java. Часть 14.

Константы.

Говоря о ключевом слове static, нельзя не упомянуть о его применении в определении констант — переменных, которые никогда не изменяются.

В языке Java существует зарезервированное слово «const», но оно не используется, и Java не поддерживает константы на уровне языка. Выход из ситуации имеется: для определения константы необходимо добавить модификаторы «static final» к полю класса.

Константы — это статические неизменяемые поля, содержимое которых неизменно. Это может относиться к примитивам, String и другим классам оберткам, а также к неизменяемым коллекциям.
Если состояние объекта может измениться, он не является константой.

Модификатор static делает переменную доступной без создания экземпляра класса, а final делает ее неизменяемой.

При этом нужно помнить, что если мы сделаем переменную только static, то ее легко можно будет изменить, обратившись к ней через имя класса.

Если переменная будет иметь только модификатор final, то при создании каждого экземпляра класса она может быть проинициализирована своим значением.

Соответственно, используя совместно модификаторы static и final, переменная остается статической и может быть проинициализирована только один раз.

В Java константой считается не та переменная, которую нельзя изменить в рамках одного объекта, а та, которую не могут изменить ни один экземпляр класса в котором она находится (такая переменная создается и инициализируется один раз для всех экземпляров, сколько бы их не было).

JavaStart. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍3👨‍💻3
Please open Telegram to view this post
VIEW IN TELEGRAM
😁5🔥4👍1
Какая аннотация в Spring MVC позволяет сопоставить HTTP-GET запрос на метод контроллера?
Anonymous Quiz
0%
Посмотреть ответ
3👍2🎉2
Please open Telegram to view this post
VIEW IN TELEGRAM
😁6👍3👨‍💻1
Модификатор доступа static в Java. Часть 15.

Причины использовать константы.

1) Константы улучшают читабельность программного кода;
Улучшают производительность приложения, поскольку они кешируются как JVM, так и самим приложением.

2) Используя константы вместо чисел, вы практикуете применение паттерна Magic Number.

Ключевые моменты.

1) При использовании констант необходимо соблюдать соглашения об именах. Константы именуются в стиле CONSTANT_CASE: все буквы в верхнем регистре, каждое слово отделено от следующего подчеркиванием;

2) Разместить константы можно в классе, который их будет использовать, в отдельных нескольких классах в соответствии с логикой использования констант, в одном большом отдельном глобальном классе и в интерфейсе;

3) Если константы относятся к перечисляемому типу (например дни недели, месяцы и т.д.), то для таких констант удобнее использовать enum.

JavaStart. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4👨‍💻321
Please open Telegram to view this post
VIEW IN TELEGRAM
😁82💯2
Как называется сборщик мусора, работающий по принципу «молодое/старое поколение» с генерациями?
Anonymous Quiz
22%
Serial GC
45%
G1 GC
12%
Parallel GC
9%
CMS
13%
Посмотреть ответ
🎉53👍2
Please open Telegram to view this post
VIEW IN TELEGRAM
😁4👨‍💻4👍2
Java простыми словами.

Java является объектно–ориентированным языком программирования 👨‍💻

Объект в Java – это любая сущность, обладающая характерным поведением (имеет какие-то методы) и отличительными характеристиками (имеет какие-то поля – атрибуты).

Объектно–ориентированное программирование – парадигма программирования, в которой программа строится из взаимодействующих объектов 🤝

JavaStart. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4👨‍💻42
Please open Telegram to view this post
VIEW IN TELEGRAM
😁5💯4👍2