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

Константы интерфейса в Java

Интерфейс может хранить константы - поля, значение которых не меняется. В Java такие поля неявно public static final: к ним обращаются через имя интерфейса или из реализующего класса. Пример константы рядом с методом:

interface DiskFigure { double PI = 3.141592653589793; double area(double radius); }

Модификаторы public static final можно не писать - компилятор подставит их сам. Константу удобно использовать в формулах внутри класса:

class Disk implements DiskFigure { @Override public double area(double radius) { return DiskFigure.PI * radius * radius; } }

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

interface PostLimits { int MAX_TITLE_LEN = 200; int MAX_TEXT_LEN = 10000; } class Post implements PostLimits { public boolean isTitleValid(String title) { return title.length() <= PostLimits.MAX_TITLE_LEN; } }

Сделайте интерфейс EmployeeLimits с константами MIN_AGE со значением 18 и MAX_AGE со значением 65.

Сделайте класс Employee, реализующий EmployeeLimits, и метод isAgeValid, который проверяет, что возраст между MIN_AGE и MAX_AGE.

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