JavaStart
909 subscribers
910 photos
28 videos
620 links
Учи Java вместе с нами!
Наша платформа с курсом - https://javastart.tech
Ютуб с обучающими видео - https://www.youtube.com/@javastart_tech
Download Telegram
Модификатор доступа static в Java. Часть 9.

Какие причины использовать статические блоки?

1) Если для инициализации статических переменных требуется дополнительная логика, за исключением операции присваивания;

2) Если инициализация статических переменных подвержена ошибкам и требует обработки исключений.

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

1) У класса может быть несколько статических блоков;

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

3) Из статического блока нельзя получить доступ к не статическим членам класса;

4) Статический блок не может пробросить дальше перехваченные исключения, но может их выбросить. При этом всегда будет выкидываться только java.lang.ExceptionInInitializerError;

5) Статические поля или переменные инициализируются после загрузки класса в память в том же порядке, в каком они описаны в классе.

👉 JavaStart. Подписаться
👍621👨‍💻1
Media is too big
VIEW IN TELEGRAM
Всем привет!

Спешим поделиться с вами отзывом от нашего студента.

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

В процессе собеседований также было и тестовое задание. Наш ментор сделал ревью проекта и предложил правки, и в итоге Максим получил оффер!

Небольшая поддержка в первые недели работы и сегодня Максим уже полностью самостоятельный разработчик :)

🌐 Ссылка на полный отзыв на Youtube
https://www.youtube.com/watch?v=_kTpV5U61is

👉 JavaStart. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👍211👨‍💻1
Модификатор доступа static в Java. Часть 10.

Статический вложенный класс (nested class).

Язык программирования Java позволяет создавать классы внутри другого класса. Такой класс называется вложенным (nested).

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

Вложенные классы бывают двух видов:

вложенные классы, объявленные статическими, называются статическими вложенными классами (static nested classes);

вложенные классы, объявленные без static, называются внутренними классами (inner classes)

Основное различие между этими понятиями состоит в том, что внутренние классы имеют доступ ко всем членам включающего их класса (включая приватные) верхнего уровня, тогда как статические вложенные классы имеют доступ только к статическим членам внешнего класса.

Примером статического класса (ВНИМАНИЕ) является уже известный нам Singleton паттерн (Картинка 2).

Наиболее широко используемый подход для создания объектов «одиночка» (singleton) — это статический вложенный класс, поскольку он не требует никакой синхронизации, его легко изучить и реализовать.

👉 JavaStart. Подписаться
👍42🔥21👨‍💻1
Java – один из самых популярных языков программирования, который открывает двери к разнообразным карьерным возможностям и позволяет создавать полезные приложения для различных платформ.

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

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

Хотим подарить вам промокод START со скидкой 15%, который будет действовать неделю на нашей платформе JavaStart!

Напомним основные достоинства курса:

Курс будет доступен онлайн на платформе пожизненно;
Среднее прохождение курса составляет от 7–10 месяцев. Вы будете заниматься индивидуально и в своем темпе;
Личный ментор;
3 тестовых собеседования;
Три пет проекта для портфолио.

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

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

Задавайте любые вопросы, на сайте есть ссылки на чат с поддержкой и номер телефона для связи – можно писать как в 💬 Telegram, так и в 💬 WhatsApp.

👉 JavaStart. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥21👏1👨‍💻1
Каким образом можно обращаться к статическими переменным класса?
Anonymous Quiz
10%
Через объект класса
11%
Через ссылку на объект
6%
Через ссылку на метод
70%
Через имя класса
2%
Посмотреть ответ
👨‍💻4👍21🎉1
😁212👍1🔥1
Модификатор доступа static в Java. Часть 11.

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

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

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

👉 JavaStart. Подписаться
👍711👨‍💻1
Модификатор доступа static в Java. Часть 12.

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

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

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

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

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

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

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

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

👉 JavaStart. Подписаться
👍6👨‍💻21🤓1
Модификатор доступа static в Java. Часть 13.

Константы.

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

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

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

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

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

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

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

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

👉 JavaStart. Подписаться
👍611🔥1
Какой модификатор доступа используется для создания констант класса, доступных из других классов без создания экземпляра?
Anonymous Quiz
22%
public
7%
protected
3%
private
66%
static
2%
Посмотреть ответ
👍5🎉1
😁6👍3💯1
Модификатор доступа static в Java. Часть 14.

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

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

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

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

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

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

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

👉 JavaStart. Подписаться
👍821👏1👨‍💻1
Что такое SCRUM?

SCRUM – это гибкая (Agile) методология организации совместного рабочего процесса, в основе которой – поэтапная разработка и совершенствование продукта небольшой командой специалистов различного профиля.

Одна из основных составляющих SCRUM это Sprint. Спринт – период, в течение которого команда создает и совершенствует отдельную часть продукта, чтобы быть готовым к изменениям и исключить глобальную доработку.
Каждый спринт начинается с планирования. Команда оценивает предстоящую работу, подбирает продолжительность цикла (около двух недель).
Задачи помещаются в Sprint Backlog.

Ежедневно вся команда собирается на 15 минут (daily stand up) для того, чтобы узнать, кто что делал вчера и чем занимается сейчас, а также что мешает выполнению задачи.

В конце цикла вся команда, включая владельца продукта и Scrum–мастера, собирается для демонстрации (demo) результатов работы.

На Sprint Retrospective команда обсуждает проблемы, с которыми столкнулась во время работы, а также пути их решения.

👉 JavaStart. Подписаться
👍922🔥2
Java является объектно–ориентированным языком программирования 👨‍💻

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

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

👉 JavaStart. Подписаться
👍101👨‍💻1
😁19💯21🤩1
Основные принципы ООП в Java: наследование, инкапсуляция, полиморфизм, абстракция.

Суть наследования состоит в том, что один объект может наследовать свойства другого объекта, а также иметь свои собственные.

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

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

Не так давно начали выделять Абстракцию — это выделение общих характеристик объектов, их свойств и методов, при игнорировании деталей реализации.

👉 JavaStart. Подписаться
👍91👨‍💻1