У меня есть подкласс и суперкласс. В суперклассе у меня есть метод, который записывает что-то. Когда я создаю экземпляр подкласса, регистратор создает сообщение о регистрации для суперкласса. Почему это происходит?
Пример кода:
SuperClass.java
import java.util.logging.Level;
import java.util.logging.Logger;
public abstract class SuperClass {
public void logAndPrintClass(){
String name = this.getClass().getName();
System.out.println(name);
Logger logger = Logger.getLogger(name);
logger.log(Level.INFO, "Logmessage");
}
}
SubClass.java
public class SubClass extends SuperClass {
}
TestLogBubClass.java
public class TestLogBubClass {
public static void main(String[] args){
SuperClass obj = new SubClass();
obj.logAndPrintClass();
}
}
Вывод:
SubClass
Mar 15, 2013 6:30:04 PM SuperClass logAndPrintClass
INFO: Logmessage
Как вы можете видеть, имя класса правильно напечатано, но неправильно представлено в сообщении журнала.