gpt4 book ai didi

java - 获取类简单名称(包括包装类!)

转载 作者:行者123 更新时间:2023-12-01 13:11:03 25 4
gpt4 key购买 nike

我有一个类,想要获取它的名称以供显示。

Class<?> cls = obj.getClass();

假设 objKeyDownEvent.Listener 的实例(KeyEvent 中的嵌套接口(interface))。

  • 如果我使用 cls.getSimpleName(),我会得到 Listener - 可以轻松地获得更多具有该名称的内容。
  • 如果我使用 cls.getName(),我会获得包的全名 - 准确,但不太容易在日志中读取。

知道如何从cls获取“KeyDownEvent.Listener”吗?

<小时/>

请注意,我想在日志中使用结果。

虽然 KeyDownEvent.Listener 并不准确,因为不同的包中可能有多个具有此类名称的类,但我将冒险。它比带有包的整个名称更好。

最佳答案

所以我找到了一个解决方案,可以帮助其他人。

诀窍是class.getEnendingClass():

Class<?> cls = obj.getClass();
Class<?> enclosing = cls.getEnclosingClass();
return
(enclosing == null ? "" : enclosing.getSimpleName() + ".")
+ cls.getSimpleName();

关于java - 获取类简单名称(包括包装类!),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22867693/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com