Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗jvOpOpPrIf 141 of 147 menu
◀ ▶

Практика на интерфейсы в Java

Дан интерфейс:

interface Named { String getName(); }

Сделайте класс Employee, реализующий интерфейс Named. Выведите getName() для "Oslo".

Даны интерфейсы:

interface Printable { String printLine(); } interface Storable { boolean save(); }

Сделайте класс Document, реализующий оба интерфейса. Пусть printLine() возвращает "doc", а save() - true. Выведите оба результата.

Дан интерфейс:

interface Clock { String now(); default String stamp() { return "@" + now(); } }

Сделайте класс FixedClock, который возвращает "12:00" из now(). Выведите stamp() без переопределения stamp.

Сделайте интерфейс Desc, наследующий Named, и добавьте метод blurb(). Сделайте класс Product с именем и методом blurb(), возвращающим getName() и "!". Выведите blurb для "tea".

Даны типы:

interface Scored { int getScore(); } class Entry implements Scored { private final int score; Entry(int score) { this.score = score; } @Override public int getScore() { return score; } }

Объекты Entry уже лежат в списке, по нему посчитаем сумму:

import java.util.List; List<Scored> rows = List.of(new Entry(3), new Entry(7), new Entry(5));

Выведите сумму getScore() всех записей.

Сделайте интерфейс Resettable с методом reset(). Сделайте класс Counter, который хранит value и реализует Resettable. Увеличьте значение до 4, сбросьте, выведите value.

Даны типы:

interface A { default String tag() { return "A"; } } interface B { default String tag() { return "B"; } }

Сделайте класс Both, реализующий A и B, и верните из tag() строку "AB". Выведите результат.

Сделайте интерфейс Validator с методом ok(String text). Сделайте NonEmpty, принимающий только непустые строки. Проверьте "" и "hi", выведите оба ответа.

Дан фрагмент:

interface HasId { long getId(); } void showId(Object x) { if (x instanceof HasId hasId) { System.out.println(hasId.getId()); } else { System.out.println(0L); } }

Вызовите showId для анонимной реализации HasId с id = 9 и для строки "x".

Сделайте интерфейс Formatter со static-методом hex(int n), возвращающим шестнадцатеричную строку без префикса. Выведите результат для 255.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить