Tag: java

为什么不能在Java中扩展注释?

我不明白为什么在Java注释中没有inheritance,就像Java类一样。 我认为这将是非常有用的。 例如:我想知道给定的注释是否是一个validation器。 通过inheritance,我可以自反地浏览超类来知道这个注释是否扩展了ValidatorAnnotation 。 否则,我怎么能做到这一点? 那么,任何人都可以给我一个这个devise决定的理由吗?

Mockito:试图窥探方法是调用原始方法

我正在使用Mockito 1.9.0。 我想在JUnittesting中模拟一个类的单一方法的行为,所以我有 final MyClass myClassSpy = Mockito.spy(myInstance); Mockito.when(myClassSpy.method1()).thenReturn(myResults); 问题是,在第二行, myClassSpy.method1()实际上被调用,导致一个exception。 我使用mock的唯一原因是,以后只要myClassSpy.method1() ,真正的方法将不会被调用,并且myResults对象将被返回。 MyClass是一个接口, myInstance是一个实现,如果这很重要。 我需要做些什么来纠正这种间谍行为?

使用java.util.logging的好例子

我想在我的程序中使用日志。 我听说过java.util.logging ,但我不知道如何开始。 有什么我能用logging做什么的例子? 我如何使用我自己的程序日志logging?

测量Java方法的执行时间

如何计算在Java中执行方法所用的时间?

抛出Java不支持/实现操作的标准exception是什么?

特别是在这些情况下是否有一个标准的Exception子类?

如何将集合转换为列表?

我正在使用Apache Collections库中的TreeBidiMap 。 我想对这个doubles的价值进行分类。 我的方法是检索一个值的Collection使用: Collection coll = themap.values(); 这自然工作正常。 主要问题:我现在想知道如何将转换/转换(不知道哪个是正确的) coll到一个List以便它可以被sorting? 然后我打算遍历sortingTreeBidiMap List对象,它应该是按顺序的,并使用themap.getKey(iterator.next())从TreeBidiMap ( themap )中获取适当的键,其中迭代器将位于doubles列表之上。

密钥库更改密码

我目前有一个密钥库,只有我应该知道的密码。 我现在需要让别人访问该密钥库,所以我想要么: 1)更改密码,所以我可以与他人分享,让他们签字 2)创build一个不同的密码,并允许他们签字。 这可能吗? 如果是的话 – 怎么样?

IntelliJ组织import

IntelliJ是否具有类似Eclipse中的组织导入function? 我所拥有的是多个类缺less导入的Java文件。 例: package com.test; public class Foo { public Map map; public JTable table; } 在Eclipse中,我可以使用Organize Imports,它会自动导入java.util.Map和javax.swing.JTable 。 在IntelliJ中,我必须单独进入每个课程,select它,然后按下Alt-Enter。 有一个优化导入function,但它似乎做的是sorting和扩大现有的import。 我正在使用IntelliJ 10.5。

Java:从集合中获取第一项

如果我有一个集合,比如Collection<String> strs ,我怎样才能得到第一个项目呢? 我可以调用一个Iterator , next()的第next() ,然后抛出Iterator 。 有没有更浪费的方式来做到这一点?

我如何加快gwt编译器?

我们开始在我们的项目中更多地使用GWT,GWT编译器的性能变得越来越令人讨厌。 我们将开始改变我们的工作实践,以缓解这个问题,包括更加重视托pipe模式浏览器,这种浏览器推迟到稍后才运行GWT编译器,但这会带来自身的风险,尤其是没有捕捉真正的浏览器问题,直到比我们想要的晚得多。 理想情况下,我们希望让GWT编译器本身更快 – 编写一个相当小的应用程序的一分钟就是不必要的。 但是,如果我们使用相当天真的方式进行编译,那么我希望我们能够取得一些快速和轻松的成果。 我们目前正在调用com.google.gwt.dev.Compiler作为一个来自Ant Ant目标的Java应用程序,最大的堆是256m,堆栈空间很大。 编译器由Ant使用fork = true和最新的Java 6 JRE启动,试图利用Java6的改进性能。 我们将主控制器类与应用程序类path一起传递给编译器,然后closures它。 我们还能做些什么来获得额外的速度? 我们可以给它更多的信息,所以它花费更less的时间来发现做什么? 我知道我们可以告诉它只为一个浏览器编译,但我们需要做多浏览器testing,所以这不是很实际。 所有的build议欢迎在这一点上。