public interface Example<E>
{
E get(int index);
default E get()
{
return get(0);
}
}
Это будет первоначальный дизайн интерфейса. Что-то вроде этого приемлемое использование метода по умолчанию (в основном для аргументов по умолчанию), или они должны использоваться только в будущем для добавления дополнительных функций?Является ли это приемлемым использованием метода интерфейса Java по умолчанию?
Официальная строка, которую я слышал от Oracle, состоит в том, что она предназначена прежде всего для будущих дополнительных функций. Но в Java 8 есть новые интерфейсы, которые включают методы по умолчанию, поэтому похоже, что они не берут своих собственных советов. :) – yshavit
Это выглядит хорошо для меня; У меня не было бы проблем с этим при обзоре кода. Только комментарий может быть назван - может быть, 'getFirst'? Также нужно будет документировать, что он «бросит» что-то, если вещь пуста, что приведет меня к моей последней точке; это не компилируется - отсутствует имя в декларации 'interface'. –
Вы можете добавить метод по умолчанию завтра, когда это будет будущее :) – ZhongYu