草庐IT

reference-source

全部标签

java - 注释 SOURCE 保留政策

来自Java文档:类:注释将由编译器记录在类文件中,但不需要在运行时由VM保留。运行时间:注释将由编译器记录在类文件中,并在运行时由VM保留,因此可以反射性地读取它们。来源:注释将被编译器丢弃。我了解RUNTIME(为了使用带反射的注解)和CLASS(对于编译器)的用法,但我不明白什么时候可以使用@Retention(RetentionPolicy.SOURCE)你能解释一下吗? 最佳答案 @SuppressWarnings、@Override之类的东西是编译器使用的注解——在运行时不需要。对于那些RetentionPolicy.S

java - 编译器错误 : reference to call ambiguous

案例1staticvoidcall(Integeri){System.out.println("hi"+i);}staticvoidcall(inti){System.out.println("hello"+i);}publicstaticvoidmain(String...args){call(10);}案例1的输出:hello10案例2staticvoidcall(Integer...i){System.out.println("hi"+i);}staticvoidcall(int...i){System.out.println("hello"+i);}publicstaticvo

java - 行家: (use -source 5 or higher to enable static import declarations)

如何使用源5?我试过了mvn-source5test但它没有工作:-)当我通过javac编译文件时,一切正常。 最佳答案 您需要配置maven-compiler-plugin:...org.apache.maven.pluginsmaven-compiler-plugin2.3.21.51.5......编辑:更改示例以使用最新版本的插件。 关于java-行家:(use-source5orhighertoenablestaticimportdeclarations),我们在StackOv

java - Firebase Cloud Firestore : Invalid collection reference. 集合引用必须有奇数个段

我有以下代码并收到错误:Invalidcollectionreference.Collectionreferencesmusthaveanoddnumberofsegments还有代码:privatevoidsetAdapter(){FirebaseFirestoredb=FirebaseFirestore.getInstance();db.collection("app/users/"+uid+"/notifications").get().addOnCompleteListener(task->{if(task.isSuccessful()){for(DocumentSnapsho

java - 如何在 Java 中执行 "call by reference"?

如何在Java中进行“引用调用”?(假设我们使用该术语的方式与自1960年代以来在同行评审的CS文献中使用的方式相同;请参阅thisWikipediapage以获得简单的解释。)既然Java不支持指针,那怎么可能像在C和C++中那样在Java中通过引用来调用函数?? 最佳答案 在Java中,真正的传递引用是不可能的。Java通过值传递所有内容,包括引用。但是你可以用容器对象来模拟它。使用其中任何一个作为方法参数:一个数组一个集合AtomicXYZ类如果你在一个方法中改变了它的内容,改变的内容将在调用上下文中可用。糟糕,您显然是指通过

java - 默认线程,如 DestroyJavaVM、Reference Handler、Signal Dispatcher

在我自己的分析器上工作,我想解释一下我所看到的。即使在最简单的程序中,也会始终出现一些默认线程:销毁JavaVM信号调度器终结器引用处理程序虽然他们的名字很自证,但我想了解更多信息。这些线程似乎没有记录,是否有人知道挖掘这些信息的来源,甚至确切地知道这些线程的作用? 最佳答案 DestroyJavaVM是在程序中卸载JavaVM的线程导出。大多数情况下,它应该等待,直到您的虚拟机出现末日。SignalDispatcher是一个线程,用于处理操作系统发送到jvm的native信号。终结器线程从终结队列中拉取对象并调用它的终结方法。Re

java.lang.NullPointerException : Attempt to invoke virtual method on a null object reference

这个问题在这里已经有了答案:WhatisaNullPointerException,andhowdoIfixit?(12个回答)关闭7年前。我正在尝试将玩家的姓名保存在共享偏好中,并通过在共享偏好中再次获取它来使其显示在另一个Activity中,但我的应用程序崩溃了。致命异常:主要Process:plp.cs4b.thesis.drawitapp,PID:1970java.lang.RuntimeException:UnabletostartactivityComponentInfo{plp.cs4b.thesis.drawitapp/plp.cs4b.thesis.drawitapp

java - 在persistence.xml 的jta-data-source 中放入什么?

我应该在中添加什么值?我的persistence.xml?在glassfish管理面板中,我创建了一个数据源名称"abcDS".在我的jndi.properties(在src/test/resources内)我是这样定义的:[...]abcDS=new://Resource?type=DataSourceabcDS.JdbcDriver=org.hsqldb.jdbcDriverabcDS.JdbcUrl=jdbc:hsqldb:mem:testdbabcDS.JtaManaged=true[...]我应该将什么放入persistence.xml?我在网上找到了很多变种,比如:"jdb

java - eclipse Indigo中的 "create project from existing source"在哪里?

我在尝试创建“java项目”时在EclipseIndigo中找不到“从现有源创建项目”。当我选择Java项目然后下一个窗口出现选项时-用户默认位置,杰瑞,项目布局,以及工作集。在搜索Indigo用户界面的任何可能变化时,我找不到任何线索。在Indigo中哪里可以找到“从现有源创建项目”? 最佳答案 取消选中使用默认位置选项,然后浏览选择现有源代码树的父文件夹。Eclipse将自动检测现有文件和文件夹,尽管您可能必须配置项目以使其知道您的源文件夹是什么;但是“新建Java项目”向导会为您提供该选项。

Java 日志记录 : show the source line number of the caller (not the logging helper method)

Java的众多(叹息...)日志框架都很好地显示了创建日志消息的方法的源文件名的行号:log.info("hey");[INFO][Foo:413]hey但如果中间有辅助方法,实际调用者将是辅助方法,这并没有太多信息。log_info("hey");[INFO][LoggingSupport:123]hey在确定要打印的源位置时,有没有办法告诉日志记录系统从调用堆栈中删除一帧?我想这是特定于实现的;我需要的是通过CommonsLogging实现的Log4J,但我有兴趣了解其他选项。 最佳答案 另一种答案。可以通过使用方法要求log4