我正在分析一个Java应用程序,最大数量的已分配对象具有名称com.x.y.ClassName$5。netbeans分析器和yourkit使用相同的命名约定。我不知道如何用谷歌搜索命名问题。类名后面的$5是什么?编辑:似乎$5是第五个匿名类声明。我用过javap在生成的类上查找哪个是第五个匿名类。在HowtomatchcompiledclassnametoanenummemberinJava?中找到引用 最佳答案 com.x.y.ClassName$5表示“com.x.y.ClassName中第五个匿名内部类”
首先,我是java的新手,所以我的问题可能很愚蠢,但我仍然需要一个答案:)我有一个处理显示问题的类。我将其命名为“Display”,但问题是:我需要导入一个名为org.lwjgl.opengl.Display的类。当然,我的Display类语句中有这个错误:"Display"isalreadydefinedinthiscompilationunit当然,我可以重命名我的类(class),但我想确定没有办法轻易规避这个问题。一般来说(因为使用LWJGL之类的游戏库,我想我会有很多这样的东西),为我所有的类加上前缀以避免类似的标签是更好的主意吗?Update:Theclassisalrea
关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭3年前。社区在6个月前审查了是否重新打开此问题,然后将其关闭:原始关闭原因未解决Improvethisquestion当声明一个以小写字母开头的类名时,我成功地运行了我的程序。我不明白为什么要求它以第一个大写字母开头。
我遇到了一个我不知道如何解决的问题。这是项目结构的一部分+--com.packagename.appname(test)|+--db|+--ClassATest.java+--com.packagename.appname(androidTest)|+--db|+--ClassATest.java如您所见,有两个ClassATest.java。androidTest下的那个是我使用依赖于应用程序context的真实数据库测试几个东西的地方。现在,在test下,我想测试一些模拟此类数据库连接的其他东西。我的问题是,当我在test下创建ClassATest.java时,我得到了这个错误:D
ProjectLombok's类注释@ToString用于在其注释的类中自动生成toString()方法。对于这个类:@ToStringpublicclassSomeClass{Stringfield1="Field#1";Stringfield2="Field#2";}调用生成的toString()方法将产生以下输出:SomeClass(field1="Field#1",field2="Field#2")注解的可选元素可用于包含或排除特定字段,但我想知道的是......“有没有办法告诉Lombok从输出中排除类名?”也许是这样的:@ToString(exclude="#classna
我有以下类(注意方法是静态的):classBase{publicstaticvoidwhosYourDaddy(){ClasscallerClass=//whatshouldIwriteheretogetcallerclass?System.out.print(callerClass.getName());}}ClassAextendsBase{publicstaticvoidfoo(){A.whosYourDaddy();}}ClassBextendsBase{publicstaticvoidbar(){B.whosYourDaddy();}}当我打电话时:A.foo();B.bar
我正在尝试使用ManyToMany关联将两个对象相互映射,但是由于某种原因,当我使用mappedBy属性时,hibernate似乎对我正在映射的内容感到困惑。我的映射唯一奇怪的地方是关联不是在其中一个条目的主键字段上完成的(尽管该字段是唯一的)。表格是:Sequence(idNUMBER,referenceVARCHAR,)Project(idNUMBER)Sequence_Project(proj_idnumberreferencesProject(id),referencevarcharreferencesSequence(reference))对象看起来像(注释在getter上,
我有一个基于SpringFramework构建的应用程序,它使用外部属性文件来处理数据库主机字符串、用户名和密码等内容,以便我们可以将配置文件checkin我们的存储库(它是开源的)而不危及安全性分贝。这也很棒,因为开发人员可以保留他们自己的此文件副本,应用程序将自动使用他们系统上的配置,而不必手动重新配置。我希望能够以相同的方式指定一个bean。我们正在处理一些可能因开发人员而异的类,如果我们可以允许他们在不同的文件中指定此信息,这样他们就不必弄乱主配置文件,那就太好了。为了给你一个想法,我们有类似的东西${db.host}在另一个文件中指定了db.host。我们想要的是像上面的语法
比如说,类A1、A2、...、An都扩展了抽象类B。我希望A1,...,An有一个返回类名字符串的函数。这在编译时当然是已知的,但我想在B,并使用继承,以便所有Ai:s都获得此功能。在java中,这很容易做到,只要让B拥有方法StringgetName(){returnthis.getClass();}或多或少。那么,我如何在D中执行此操作?另外,有没有办法使用特征或类似方法来确定哪些类成员是公共(public)的? 最佳答案 简单的typeof(this).stringof然而这是在编译时固定的,所以继承不会改变值this.typ
我想从我的接口(interface)对象中获取实现类名——有什么方法可以做到这一点吗?我知道我可以使用instanceof来检查实现对象,但在我的应用程序中有将近20到30个类实现相同的接口(interface)来覆盖一个特定的方法。我想弄清楚它将调用哪个特定方法。 最佳答案 只需使用object.getClass()-它将返回用于实现您的接口(interface)的运行时类:publicclassTest{publicinterfaceMyInterface{}staticclassAClassimplementsMyInterf