JavaStart
908 subscribers
909 photos
28 videos
619 links
Учи Java вместе с нами!
Наша платформа с курсом - https://javastart.tech
Ютуб с обучающими видео - https://www.youtube.com/@javastart_tech
Download Telegram
Каким образом можно обращаться к статическими переменным класса?
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
Наследование в Java. Часть 1.

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

Основные обозначения:

Суперкласс (родитель) — основной класс, от которого принимаются все элементы.

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

Зачем применяют наследование в Java?

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

Синтаксис на Картинке.

Ключевое слово extends означает, что создается новый класс от уже имеющегося. Новый класс наследует имеющийся.

Из примера видно, что класс Apple создается из Fruit, при этом наследуются все его элементы. Так, Fruit — это класс-родитель, а Apple — класс-потомок.

👉 JavaStart. Подписаться
👍64👨‍💻21
Наследование в Java. Часть 2.

Правила наследования. Обращение к методу родителя с помощью ключевого слова super.

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

Давайте посмотрим на пример на Картинке. У нас есть класс Pet c public методом walk, который ничего не возвращает (void), но при этом выводит в консоль "I will walk".

Наследуемся от класса Pet классом Cow (корова). У коровы есть свой метод void moo(), который просто выводит в консоль “I will moo”.

Теперь создадим метод cowWalk(), а в нем вызовем уже существующий метод в классе Pet – void walk(), который выводит “I will walk”. Вызываем этот метод мы через ключевое слово super.

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

👉 JavaStart. Подписаться
👍82🔥1👨‍💻1
Какая команда Git позволяет объединить две ветки?
Anonymous Quiz
3%
git commit
10%
git branch
79%
git merge
6%
git add
1%
Посмотреть ответ
👏41🔥1🎉1
😁73👍1