有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java从静态属性中的抽象类获取类名

我有这个类,我想知道是否有可能以一种合法的方式获得类的名称

public abstract class AbstractDAProcedureMenuReceivedHandler<T extends AbstractDAProcedureMenuReceivedEvent> extends DaCommonEventHandler<T> {

    private static final Logger logger = LoggerFactory.getLogger ( this.getClass());

共 (3) 个答案

  1. # 1 楼答案

    使用这个:

    public abstract class AbstractDAProcedureMenuReceivedHandler<T extends AbstractDAProcedureMenuReceivedEvent> extends DaCommonEventHandler<T> {
    
        private static final Logger logger = LoggerFactory.getLogger ( AbstractDAProcedureMenuReceivedHandler.class);
    
  2. # 2 楼答案

    private static final Logger LOGGER = LoggerFactory.getLogger(AbstractDAProcedureMenuReceivedHandler.class);
    
  3. # 3 楼答案

    你为什么不直接“硬编码”这个类名呢?对于伐木工人来说,这是常见的方法

    public abstract class AbstractDAProcedureMenuReceivedHandler<T extends AbstractDAProcedureMenuReceivedEvent> extends DaCommonEventHandler<T> {
        private static final Logger logger = LoggerFactory.getLogger(AbstractDAProcedureMenuReceivedHandler.class);
        ...
    }
    

    所有其他的解决方案都是诚实的过度使用