final case class Failure[+T](exception: Throwable) extends Try[T] {...}
Т.е. при использовании Try исключение равно создаётся, соответственно, и стек-трейс будет заполнять. Нужен ещё один вариант: исключение без заполнения стек-трейса вместе с Try. :)
Externalizable нужен, если предполагается ручной вызов методов сериализациии. А чтобы иметь возможность вручную управлять сериализацией/десериализацией достаточно создать приватные методы readObject(ObjectInputStream)/writeObject(ObjectOutputStream) в Serializable-объекте.
На языке программирования нельзя повторить программу, на котором данный язык программирования был написан, но можно написать более сложную по логике программу, чем сам язык программирования.
Если в абстрактные классы сервиса.контроллера добавить конструктор, принимающий репозиторий/сервис, то и геттеры не нужно будет писать в наследниках. Достаточно только сузить тип аргумента в наследнике.
public abstract class AbstractController<
E extends AbstractEntity,
R extends CommonRepository<E>,
S extends CommonService<E, R>> implements CommonController<E, R, S> {
private final S service;
protected AbstractController(S service) {
this.service = service;
}
public getService() {
return this.service;
}
}
public class UserController extends AbstractController<User, UserRepository, UserService> {
public UserController(UserService service) {
super(service);
}
}
Target object: object being advised by one or more aspects. Also referred to as the advised object. Since Spring AOP is implemented using runtime proxies, this object will always be a proxied object.
Аспекты, во-первых, увеличивают время компиляции. Во-вторых, в случае с проски-объектами исполняется тот код, который написан тобой, а не изменённый сторонней библиотекой, которая тоже может иметь баги.
нашли заблокированный телефон со странной заставкой
Если телефон заблокирован, то каким образом я смогу получить доступ к картинке как к файлу? А если я могу получить доступ (читай, доступ к файловой системе) какими-то обходными путями, то зачем мне узнавать пароль с картинки?
Условие задачи какое-то странное.
По-моему, конструкции вида 'true' :: jsonb
'12345.67' :: jsonb
априори должны кидать какой-нибудь WrongFormatException. Ну, не является 'true' валидным json-объектом.
Для подобного должен существовать отдельный тип, например json_element.
используют для той же Java slf4/log4 (не log4j2, это важно), которые просто не умеют в асинхронность.
Насчёт log4j согласен, но чего ради slf4j обвиняется в неумении?
slf4f — это просто фасад, набор интерфейсов, за которыми может скрываться какая угодно их имплементация. Например, авторский logback умеет быть асинхронным.
Т.е. при использовании Try исключение равно создаётся, соответственно, и стек-трейс будет заполнять. Нужен ещё один вариант: исключение без заполнения стек-трейса вместе с Try. :)
С чего бы это вдруг?
может быть критична, если время на запуск лимитировано.
Например, на heroku, если через 30 секунд приложение не отзывается, то приложение убивается.
Всё спринговое AOP построено на проксях.
Т.ч. «оверхед» никуда не денется.
Не только циклов, но и произвольных блоков кода.
Нет. В Java все аргументы метода передаются по значению. Просто для объектных типов значением является ссылка.
Нет. Возвращаемое значение не входит в сигнатуру метода.
Этой возможностью лучше не пользоваться, т.к. это сахар, на деле, switch делается по хешкоду, который может иметь коллизии.
Если телефон заблокирован, то каким образом я смогу получить доступ к картинке как к файлу? А если я могу получить доступ (читай, доступ к файловой системе) какими-то обходными путями, то зачем мне узнавать пароль с картинки?
Условие задачи какое-то странное.
Хотя бы стандартную из java взять надо.
'true' :: jsonb
'12345.67' :: jsonb
априори должны кидать какой-нибудь WrongFormatException. Ну, не является 'true' валидным json-объектом.
Для подобного должен существовать отдельный тип, например json_element.
Насчёт log4j согласен, но чего ради slf4j обвиняется в неумении?
slf4f — это просто фасад, набор интерфейсов, за которыми может скрываться какая угодно их имплементация. Например, авторский logback умеет быть асинхронным.