tôi đã loại sau đây (lưu ý rằng phương pháp tĩnh):lấy tên lớp gọi từ phương pháp tĩnh thừa hưởng
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();
}
}
Và khi tôi gọi:
A.foo();
B.bar();
Tôi muốn để có được kết quả: AB
thay vì BaseBase
. Thậm chí có thể với các phương thức tĩnh (trong Java 7) không?
những gì bạn đã hạ cánh trên là giải pháp ưa thích? – cdaringe
@cdaringe Xem câu trả lời được chấp nhận. –