サブクラスが静的フィールドを継承できるインターフェイスが必要です。そのフィールドはサブクラスの名前をポイントします。Java - そのサブクラスのクラス名を指す静的フィールドを持つインターフェイスですか?
どうすればいいですか?私の心の中で例えば
(コードが使用できない):Javaでは
public interface ILogger<A> {
public static String LogTag = A.class.getName();
}
public class Sub implements ILogger<Sub> {
public Sub() {
Log.debug(LogTag, ...);
}
}
「消去」のコンセプトをありがとうございます、私は今のところそれを知っています。しかし、私はもっと簡潔な解決策を望んでいます。あなたのコードの代わりに、 'public static final String LogTag = Sub.class.getName()'とタイプすることができます。しかし、もう一度感謝します:-) –
残念ながら、Javaではより簡潔な解決策はありません。 –
Downvoter-この回答が間違っているか、改善する方法を教えてください。 – templatetypedef