У меня есть статический класс «Внутренний» и вложенный статический класс «Глубже» в двух разных классах A, B. Класс «Внутренний» реализует трейт C, который имеет метод ping(). Я хочу выполнить метод hello() (принадлежащий Deeper) из метода ping() таким образом, чтобы каждый раз я получал либо «Hello A», либо «Hello B» в зависимости от класса, вызвавшего трейт. Вот что я написал (использую katalon-studio):
public class A
{
static class Inner implements C{
static class Deeper{
static void hello(){ println 'Hello A'}
}
}
}
public class B
{
static class Inner implements C{
static class Deeper{
static void hello(){ println 'Hello B'}
}
}
}
public static trait C {
static void ping() {
this.Deeper.hello()
}
}
A.Inner.ping()
B.Inner.ping()
Я получил следующую ошибку:
17 августа 2018 г., 16:46:57 — [ОШИБКА] — Тестовые наборы/V2/Общие/Черновик НЕ ПРОШЕЛ из-за того, что переменная «Глубже» не определена для тестового примера.
this.getClass()
? Или проверить стекThread.currentThread()
? - person ernest_k   schedule 16.08.2018