草庐IT

instance-methods

全部标签

java - 无法复制 : "Comparison method violates its general contract!"

我收到以下错误:“比较方法违反了它的一般契约(Contract)!”使用以下比较器时,但是我无法使用jUnit复制异常。我想知道是什么导致了这个问题以及如何复制它。有其他人遇到同样问题但不知道如何复制的例子。publicclassDtoComparatorimplementsComparator{@Overridepublicintcompare(Dtor1,Dtor2){intvalue=0;value=r1.getOrder()-r2.getOrder();if(value==0&&!isValueNull(r1.getDate(),r2.getDate()))value=r1.g

java - 为什么 Java 需要 "This method can be called at most once in a given Java Virtual Machine"?

在静态方法URL.setURLStreamHandlerFactory的Java文档中,有一条警告“此方法在给定的Java中最多只能调用一次虚拟机”。http://docs.oracle.com/javase/7/docs/api/java/net/URL.html#setURLStreamHandlerFactory(java.net.URLStreamHandlerFactory)简单看了下源码,URL类中有一个静态实例变量:staticURLStreamHandlerFactoryfactory;setURLStreamHandlerFactory只是将工厂分配给这个变量:pub

java - 什么时候应该使用 Instance<T> 和 Provider<T> 在 CDI 中注入(inject) bean?

我一直在阅读Instance的API文档和Provider,但尚不完全清楚何时应使用它们。以下方法之间有什么区别?@InjectMyBeanbean;@InjectInstancebean;@InjectProviderbean; 最佳答案 Provider是一个由CDI接口(interface)扩展的JSR-330接口(interface)Instance.注入(inject)MyBean,当没有匹配的bean或有多个匹配的bean时,您的应用程序将在启动期间抛出异常。注入(inject)Instance,bean解析委托(del

java - IntelliJ 2017.2 "Deploy applications configured in Tomcat instance"对话框中的 "Run/Debug Configurations"是什么?

在IntelliJUltimate2017.2,在Run/DebugConfigurations对话框中,带有TomcatServer>左边的Local项被选中,exactly复选框DeployapplicationsconfiguredinTomcatinstance是什么意思?此对话框的全部目的是在Tomcat中运行我的应用程序,所以我很困惑。我尝试通过左下方的?图标访问文档,但收到了404error对于itsURL. 最佳答案 此设置控制当从IntelliJIDEA启动Tomcat时,是否将部署您已经存在于TOMCAT_HOM

java - 映射结构 : Ambiguous mapping methods found for mapping collection element

我有两种将实体映射到域的方法。RDomainentityToDomain(REntityrEntity)/*thismethodignoressomeofthefieldsinthedomain.*/RDomainentityToDomainLight(REntityrEntity)当我尝试定义实体列表到域的映射方法时,我得到了为映射集合找到的模糊映射方法元素。ListentitiesToDomains(ListrEntities)有没有办法定义用于映射对象集合的方法 最佳答案 正如@Filip所建议的那样,最好这样做:RDomai

java : execute a method over a maximum period of time

我正在使用JavaMailAPI,Folder类中有一个名为“搜索”的方法,有时执行时间过长。我想要的是在最长的时间段内执行此方法(例如最多15秒),这样我可以确定此方法不会运行超过15秒。伪代码messages=maximumMethod(Folder.search(),15);是否必须创建一个线程来执行此方法并在主线程中使用wait方法? 最佳答案 最好的方法是创建一个单线程的executor你可以用它提交可调用文件。返回值为Future你可以从中得到结果。你也可以说等待这么久才能得到结果。这是示例代码:ExecutorServ

Java 泛型 : Method X is not applicable for the arguments

EventHandler.java:publicabstractclassEventHandler{publicabstractvoidHandleEvent(Objectsender,Ee);}观察者.java:publicclassObservers{privateCopyOnWriteArrayList>mListeners=newCopyOnWriteArrayList>();publicvoiddispatchEvent(Objectsender,Eargs){if(mListeners!=null){for(EventHandlerlistener:mListeners){

Java "Jackson"JsonMappingException : Can not deserialize instance of float out of FIELD_NAME token

与这个类:publicclassProductsimplementsSerializable{privateBigDecimalproductId;privatefloatpriority;publicfloatgetPriority(){returnpriority;}publicvoidsetPriority(floatpriority){this.priority=priority;}}在对此类JSON数据进行反序列化时:{"productId":47552,"priority":78}出现这个错误:org.codehaus.jackson.map.JsonMappingExce

java - Eclipse 格式化程序 : how do I align the code in my method

ctrl+shift+F可以很好地处理公共(public)类中的内容。但格式在方法内部不起作用,请参阅=符号未对齐。为什么?以及如何让它发挥作用?publicclassmyClassextendsActivityInstrumentationTestCase2{publicstaticbooleanmyVar=true;privatestaticfinalStringTARGET_PACKAGE_ID="com.xxxx.test";privatestaticfinalStringLAUNCHER_ACTIVITY_FULL_CLASSNAME="com.xxxx.test";priv

java - java中的 "invoking a static method with class name"和 "invoking a static method with an object"有什么区别吗?

在java中我们可以“用类名调用一个静态方法”也可以“用一个对象调用一个静态方法”java中“用类名调用静态方法”和“用对象调用静态方法”有什么区别? 最佳答案 没有区别,但建议以静态方式调用static方法,即使用ClassName。如果不这样做,静态分析仪通常会报告错误。这里要理解的重要一点是static方法是无状态的,因此使用实例调用它们会使阅读您的代码的人感到困惑。因为无论您使用什么实例调用static方法,结果都将保持不变。这是因为static方法属于类而不属于对象。 关于ja