t.me/atinfo_chat Telegram группа по автоматизации тестирования

Selenium 2 + Eclipse


(saddy666@gmail.com) #1

Можно ли как то вынести написаные методы в Eclipse с использованием java в отдельный файл(класс) чтобы потом вызывать оттуда а не снова и снова описывать их в каждом классе.и как их вызывать оттуда(в плане синтаксиса)?

если есть возможность прикрепить скриншот буду мега благодарна


(Mykhailo Poliarush) #2

это не только можно, но и нужно (для справки прочитайте DRY)

такое действие выполняется с помощью наследования

укажу пример на java

предположим в вас есть два класса, которые должны использовать один и тот же метод

  1. для этого создаем абстрактный класс
    {syntaxhighlighter brush: java;fontsize: 100; first-line: 1; }public class AbstractClass { public void printMyString(String text) { System.out.println(text); } } {/syntaxhighlighter}
  2. расширяем нужные вам классы
    {syntaxhighlighter brush: java;fontsize: 100; first-line: 1; }public class MyClass1 extends AbstractClass { public static void main(String[] args) { MyClass1 object = new MyClass1(); object.printMyString("my string"); } } {/syntaxhighlighter}{syntaxhighlighter brush: java;fontsize: 100; first-line: 1; }public class MyClass2 extends AbstractClass { public static void main(String[] args) { MyClass2 object = new MyClass2(); object.printMyString("my string 2"); } }{/syntaxhighlighter}

(saddy666@gmail.com) #3

а можно ли расширить добавив 2 класса.ну скажес у нас есть еще и AbstractClass2.как можно добавить и его?


(Shaman) #4

Увы нет, ява не поддерживает множественное наследование. возможно строить только иерархию наследования наследую по одному классу.


(Mykhailo Poliarush) #5

шаман прав, но если уж сильно надо, то конечно можно извратиться с помощью интерфейсов и фабрики делигатов. 

вот в этой статье это подробно описанно. http://java.sys-con.com/node/37748