public class A {
static X s_x = new X(A.class);
}
和
public class B {
static X s_x = new X(B.class);
}
等許多類別沒有任何特殊關係或共性。我真正希望我能做的是在超類中初始化s_x,但使用特定於子類的代碼;這是不可能的,因爲靜態代碼是不可覆蓋的。所以,我想至少讓我的複製粘貼更容易。我想要一個魔法表達式求值爲類對象,即寫:
static X s_x = new X(/* magic expression here */);
其中魔術表達是無論相同,其中我聲明我的X中的類的,但確實與上述相同的例子。次優選項將是一種靜態方法來達到同樣的效果。
注:
- Java 6中如果可能的話。
- 這個問題不(一定)有關記錄...
確實類'A'和類'B'有某種形式的關係呢? –
@BuhakeSindi:無。編輯更清楚。 – einpoklum
您可以使用getClass()方法。 –