julia_v_iluhina

Untitled

Sep 16th, 2016
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.34 KB | None | 0 0
  1. Уже немного познакомились с понятием интерфейса, абстрактного класса
  2.  
  3. Эти знания нам пригодятся
  4.  
  5.  
  6. Дальше нам нужно уметь работать с умными объектами-локаторами
  7. которые создаются в момент вызова  $(“#element”) или $$(“#list-element”)
  8.  
  9. Как ты понимаешь, это 2 разных класса
  10. т к первый - в итоге работает с элементом, а второй - со списком элементов
  11.  
  12. Но - для обоих нам нужно, чтобы в нужный нам момент мы могли получить по локатору
  13. веб элемент или список вебэлементов
  14. Именно это общее
  15. Но - возвращаемый тип - разный
  16. Значит - и без дженериков не обойдемся)
  17.  
  18. Получаем, что в основе иерархии лежит интерфейс
  19. с методом getWrappedEntity
  20. посмотри наше решение, пока этот метод живет в кондишенах
  21. и я тебе в ревью говорила - что это пока костыль
  22.  
  23. Вот эту функциональность = базовую функциональность для всех наших умных  объектов-локаторов
  24. Мы и объявим базовой
  25. А с помощью дженериков обеспечим - чтобы метод  getWrappedEntity мог возвращать тот тип
  26. который задан в <> для нашего интерфейса
  27.  
  28. Далее
  29. Посмотри на кусок задания
  30. с которым мы будем далее работать
  31. http://joxi.ru/KAg8voQsgJGMEr
  32.  
  33. По нему ясно, какие методы должны быть у
  34. умного объекта-локатора, который оперирует одним элементом
  35. и у  умного объекта-локатора, который оперирует списком элементов
  36.  
  37. Вот и реализуем интерфейсы для каждого из этих умных объектов,
  38. куда включим все эти методы
  39.  
  40. Сразу думай о типах параметров и возвращаемых значений
  41.  
  42. прими к сведению вот это
  43. http://stackoverflow.com/questions/1932247/abstract-classes-and-interfaces-best-practices-in-java
  44. http://joxi.ru/E2pdR1lFB1pyM2
  45.  
  46. И уже после этого - реализуй классы,
  47. которые имплементируют наши интерфейсы
  48.  
  49. Конструкторы классов будут на вход получать локаторы
  50. И более ничего не делать
  51.  
  52. Надо будет реализовать все методы, которые были объявлены в интерфейсах
  53.  
  54. should-методы - должны оперировать нашими умными ожиданиями
  55. мы уже практически все подготовили для этого
  56.  
  57. но адаптировать все же придется
  58. попробуй разобраться самостоятельно)
Advertisement
Add Comment
Please, Sign In to add comment