Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- Посмотри на информацию о анонимных классах
- https://docs.oracle.com/javase/tutorial/java/javaOO/anonymousclasses.html#syntax-of-anonymous-classes
- анонимный класс можно создать
- используя интерфейс - http://joxi.ru/krDOZldF0XyjkA
- если ты внутри метода реализуешь объект анонимного класса
- то все переменные метода, параметры метода - будут доступны внутри объекта анонимного класса
- */
- *********************
- /*
- можно передавать объект анонимного класса как параметр при вызове другого метода
- */
- public ... xxx(final YYY yyy) {
- doSomething(new ZZZ() {
- ...
- ....yyy.....//мы можем внутри объекта анонимного класса работать с параметром метода yyy
- ...});
- }
- ***********************************************************
- /*
- Как выше написано - объекты анонимных классов можно создавать используя интерфейсы
- Давай вспомним про то как мы реализовали кондишены
- У нас был интерфейс с объявленным методом
- Мы использовали дженерики - чтобы позже указать, что возвратит этот объявленный метод
- Тут у нас задача похожая
- Что нам должна вернуть команда, значение какого типа?
- достаточно посмотреть - что возвращают методы класса AbstractLazyElement,
- в реализации которых
- мы сначала ждем выполнения кондишена и затем - что-то делаем
- понимаем - значения разных типов
- потому - нам пригодится решение, которое мы ранее использовали в реализации интерфейча для кондишенов
- что мы передадим как параметр для метода нашего нового интерфейса
- смотрим туда же, на реализацию тех же методов в AbstractLazyElement
- мы работаем с WebElement
- Вот и все )
- определились с типом параметра для метода
- и с типом возвращаемого значения
- (точнее с тем, что мы этот тип зададим уже при создании объекта анонимного класса
- new Xxx<Yyy> () {....})
- */
- *****************
- /*
- http://joxi.ru/EA4k7zEUDykPD2
- Опять вспоминаем кондишены
- У нас был кондишен
- который умел выполнять некую проверку
- И у нас был класс WaitFor
- который реализовывал ЛОГИКУ ожидания выполнения этой проверки
- Тут - та же схема
- у нас есть команда - объект анонимного класса
- который умеет выполнить некое действие
- и вернуть результат
- и нам нужен объект класса-УМНОГО ВЫЗЫВАТЕЛЯ команды
- мы команду передадим как параметр в метод этого класса-умного вызывателя
- И этому умному вызывателю, помимо команды
- нужно передать наш лейзи элемент и кондишен
- (посмотри еще раз на http://joxi.ru/EA4k7zEUDykPD2)
- */
Advertisement
Add Comment
Please, Sign In to add comment