я следующий классов (заметим, что методы являются статическими):получить имя класса вызывающего абонента от унаследованного статического метода
class Base
{
public static void whosYourDaddy()
{
Class callerClass = // what should I write here to get caller class?
System.out.print(callerClass.getName());
}
}
Class A extends Base
{
public static void foo()
{
A.whosYourDaddy();
}
}
Class B extends Base
{
public static void bar()
{
B.whosYourDaddy();
}
}
И когда я звоню:
A.foo();
B.bar();
Я хотел бы получить выход: AB
вместо BaseBase
. Возможно ли это с помощью статических методов (в Java 7)?
что вы землю в качестве предпочтительного решения? – cdaringe
@ cdaringe См. Принятый ответ. –