Questions tagged «java»

Java是一种流行的高级编程语言。如果您在使用或理解语言本身时遇到问题,请使用此标签。这个标签很少单独使用,最常与[spring],[spring-boot],[jakarta-ee],[android],[javafx],[gradle]和[maven]结合使用。



4
java编译的类包含美元符号
我一直在使用Eclipse作为开发IDE。我还使用它将我的应用程序导出到.jar文件。当我查看.jar​​文件中的类时,我的一些类包含该类的名称,一个美元符号和一个数字。例: 查找$ 1.class 查找$ 2.class 查找$ 3.class 查找类 我注意到它是在较大的班级上这样做的。这是因为类太大了,将其编译成多个类吗?我在Google上搜索并浏览了多个论坛,并搜索了Java文档,但没有找到任何相关的内容。有人可以解释吗?

7
java:“最终” System.out,System.in和System.err?
System.out声明为public static final PrintStream out。 但是您可以致电System.setOut()重新分配它。 ??如果是这样怎么可能final? (System.in和适用于System.err) 更重要的是,如果您可以对public static final字段进行突变,那么就可以为final您提供的保证(如果有)意味着什么?(我从未意识到,也没想到System.in/out/err表现为final变量)
80 java  final 

3
使用非活动中的startActivityForResult
我有MainActivity这是一个Activity和其他类(这是一个简单的java类),我们将其称为“ SimpleClass”。现在我想从该类运行命令startActivityForResult。 现在我虽然可以通过该类(SimpleClass),但只有MainActivity的上下文,问题是,您不能运行context.startActivityForResult(...); 因此,使SimpleClass使用'startActivityForResult;的唯一方法;是将MainActivity的引用作为Activity变量传递给SimpleClass,如下所示: 在MainActivity类中,我通过以下方式创建SimpleClass的实例: SimpleClass simpleClass=new SimpleClass(MainActivity.this); 现在,这是SimpleClass的样子: public Class SimpleClass { Activity myMainActivity; public SimpleClass(Activity mainActivity) { super(); this.myMainActivity=mainActivity; } .... public void someMethod(...) { myMainActivity.startActivityForResult(...); } } 现在可以正常工作了,但是不是正确的方法吗?恐怕将来我可能会发生一些内存泄漏。 谢谢。射线。
80 java  android 

5
Mavens依赖声明分类器属性的目的是什么?
我有一个pom.xml文件,在该文件中,我看到它们是相同引用的3个依赖项<artifactId>,区别在于标记中 <classifier>sources</classifier> <classifier>javadoc</classifier> 我删除了具有的依赖项,SOURCES/JAVADOC并且仅保留了一个依赖项。我测试了我的应用程序,一切正常。 使用此分类标签的目的是什么?以及为什么我需要重复两次依赖项才能使用添加<classifier>标记SOURCES/JAVADOC。 <dependency> <groupId>oauth.signpost</groupId> <artifactId>signpost-commonshttp4</artifactId> <version>1.2.1.2</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>oauth.signpost</groupId> <artifactId>signpost-commonshttp4</artifactId> <version>1.2.1.2</version> <type>jar</type> ***<classifier>javadoc</classifier>*** <scope>compile</scope> </dependency> <dependency> <groupId>oauth.signpost</groupId> <artifactId>signpost-commonshttp4</artifactId> <version>1.2.1.2</version> <type>jar</type> ***<classifier>sources</classifier>*** <scope>compile</scope> </dependency>

3
Java 8:使用流API合并列表
我有以下情况 Map<Key, ListContainer> map; public class ListContainer{ List<AClass> lst; } 我必须合并所有列表 lst从ListContainer从对象Map地图。 public static void main(String args[]){ List<AClass> alltheObjectsAClass = map.values().stream(). // continue.... } 知道如何使用Java 8流API吗?

12
使用Java将邮件发送给多个收件人
我想使用以下方法将消息发送给多个收件人: message.addRecipient(Message.RecipientType.TO, String arg1); 要么 message.setRecipients(Message.RecipientType.TO,String arg1); 但一个困惑是,在第二点争论中,如何传递多个地址,例如: message.addRecipient(Message.RecipientType.CC, "abc@abc.com,abc@def.com,ghi@abc.com"); 要么 message.addRecipient(Message.RecipientType.CC, "abc@abc.com;abc@def.com;ghi@abc.com"); 我也可以使用其他方法发送消息,但是想知道上述方法的目的。如果我不能使用它(到目前为止,我对上述要求还没有任何答案),那么在邮件API中使用此方法有什么要求。

9
无法在IntelliJ Idea IDE中解析符号javafx.application
我试图在IntelliJ Idea IDE中创建JavaFX应用程序,但出现编译错误,提示: java:软件包javafx.application不存在。 我已经将Project SDK和Project Language Level更改为Java 8,重新加载了项目,但没有帮助。然后,我检查了设置中是否启用了JavaFX插件。 在Google和StackOverflow上进行的搜索并没有给我更多有关出问题的想法。预先感谢您的任何帮助。 PS我在Archlinux OS上将IntelliJ Idea 14.0与java8.1.0_25一起使用。

9
如何告诉jaxb / Maven生成多个模式包?
例: </plugin> <plugin> <groupId>org.jvnet.jaxb2.maven2</groupId> <artifactId>maven-jaxb2-plugin</artifactId> <version>0.7.1</version> <executions> <execution> <goals> <goal>generate</goal> </goals> </execution> </executions> <configuration> <schemaDirectory>src/main/resources/dir1</schemaDirectory> <schemaIncludes> <include>schema1.xsd</include> </schemaIncludes> <generatePackage>schema1.package</generatePackage> </configuration> </plugin> <plugin> <groupId>org.jvnet.jaxb2.maven2</groupId> <artifactId>maven-jaxb2-plugin</artifactId> <version>0.7.1</version> <executions> <execution> <goals> <goal>generate</goal> </goals> </execution> </executions> <configuration> <schemaDirectory>src/main/resources/dir2</schemaDirectory> <schemaIncludes> <include>schema2.xsd</include> </schemaIncludes> <generatePackage>schema2.package</generatePackage> </configuration> </plugin> </plugins> 发生了什么:Maven执行了第一个插件。然后删除目标文件夹并创建第二个程序包,该程序包随后将可见。 我尝试为第一个配置设置target / somedir1,为第二个配置设置target / somedir2。但是行为不会改变吗?有任何想法吗?我不想直接在src / main / …
80 maven-2  jaxb  schema  xsd  java 

5
如何在Java中从ArrayList中切出ArrayList?
如何ArrayList在Java中获取的数组切片?具体来说,我想做这样的事情: ArrayList<Integer> inputA = input.subList(0, input.size()/2); // where 'input' is a prepouplated ArrayList<Integer> 因此,我希望这能够正常工作,但是Java返回List-,因此不兼容。而且当我尝试投射它时,Java不会让我这么做。我需要ArrayList-该怎么办?
80 java  arraylist 

7
如何确定对象是否被锁定(同步),以免在Java中阻塞?
我有一个进程A,它在内存中包含一个带有一组记录(recordA,recordB等的表)的表。 现在,此过程可以启动许多影响记录的线程,有时我们可以有2个线程尝试访问同一记录-必须拒绝这种情况。具体来说,如果一条记录被一个线程锁定,我希望另一个线程中止(我不想阻止或等待)。 目前,我正在执行以下操作: synchronized(record) { performOperation(record); } 但这引起了我的问题...因为在Process1执行操作时,如果Process2进入其中,则它阻塞/等待同步语句,而在Process1完成时,它执行操作。相反,我想要这样的东西: if (record is locked) return; synchronized(record) { performOperation(record); } 关于如何实现这一目标的任何线索?任何帮助将非常感激。谢谢,


6
如何仅使用注释(不使用web.xml)设置JAX-RS Application?
是否可以仅使用注释来设置JAX-RS应用程序?(使用Servlet 3.0和JAX-RS Jersey 1.1.0) 我尝试了,没有运气。web.xml似乎需要使用一些。 配置A(正常运行,但具有web.xml配置) web.xml ... <servlet> <servlet-name>org.foo.rest.MyApplication</servlet-name> </servlet> <servlet-mapping> <servlet-name>org.foo.rest.MyApplication</servlet-name> <url-pattern>/*</url-pattern> </servlet-mapping> ... 爪哇 @ApplicationPath("/") public class MyApplication extends Application { ... } 配置B(无效,引发异常) @ApplicationPath("/") @WebServlet("/*") // <-- public class MyApplication extends Application { ... } 后者似乎坚持认为Application将是Servlet的子类(该异常不会引起猜测) java.lang.ClassCastException: org.foo.rest.MyApplication cannot be cast to javax.servlet.Servlet 问题 为什么web.xml定义有效,但注释却无效?有什么不同? 有没有办法让它工作,例如有没有web.xml的JAX-RS应用程序?


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.