草庐IT

do-catch

全部标签

结合 lambda 和 multi-catch 子句时出现 Java 错误?

importjava.io.*;importjava.net.*;publicclassTest{publicstaticvoidmain(String[]arguments)throwsException{Runnablerunnable=()->{try{throwException();}catch(SocketException|EOFExceptionexception){System.err.println("wrong");}catch(IOExceptionexception){System.err.println("right");}};runnable.run();

java - 安卓 : What should I do instead of using a deprecated function(getwidth() )?

我想使用函数activity.getWindowManager().getDefaultDisplay().getwidth()但有一条警告说这个函数已被弃用我该怎么办?无论如何我都应该使用这个功能吗?或者有一些其他功能可以做同样的事情? 最佳答案 弃用意味着不应使用它,但出于兼容性原因它仍然存在。您应该改用:Pointsize=newPoint();activity.getWindowManager().getDefaultDisplay().getSize(size);intwidth=size.x;intheight=size

java - 棘手的 try-catch java 代码

publicclassStrange1{publicstaticvoidmain(String[]args){try{Missingm=newMissing();}catch(java.lang.NoClassDefFoundErrorex){System.out.println("Gotit!");}}}publicclassStrange2{publicstaticvoidmain(String[]args){Missingm;try{m=newMissing();}catch(java.lang.NoClassDefFoundErrorex){System.out.println

java - Spring 3.1 : Smartest Way To Do That? 通过IP地址认证

我已经使用SpringSecurity3.1实现了LDAP身份验证。我的security.xml文件发布在下面。我需要改变我的身份验证过程,这样如果用户从“白名单”(保存在数据库表中)上的IP地址访问站点,那么该用户应该自动使用Spring3.1进行身份验证,然后重定向远离登录屏幕(这不是我的主意,我被告知要这样做)。如果用户不是来自白名单IP地址之一,则应强制他/她在登录页面上通过LDAP身份验证。我是Spring和SpringSecurity的新手,所以我去了Spring3.1ReferenceDocumentation并阅读第一部分的全部内容。在那里,我阅读了建议,如果您有任何特

java - "Primitive values do not share state with other primitive values"是什么意思?

Section4.2oftheJavaLanguageSpecification指出,“原始值不与其他原始值共享状态”。这到底是什么意思? 最佳答案 这意味着原始类型的每个值都在内存中占据自己的空间,代表一个不能与其他值共享的状态。换句话说,除了直接或通过复合赋值运算符赋值外,您不能以任何方式更改变量或原始类型字段的状态。这与引用类型形成对比,引用类型可能会或可能不会通过“指向”同一对象来共享状态。您可以通过不同的变量对其进行操作来更改引用对象。 关于java-"Primitiveval

java - 在一个 catch block 中处理多种不同类型的异常?

如果在catch()中允许多个异常,那么它将减少冗余错误处理代码的数量。例如,try{//somestatments}catch(Type1Exceptiont1,Type2Exceptiont2,Type3Exceptiont3){//wishifthiscouldbeallowed/*t1,t2,t3arechildrenofExceptionandneedssameerrorhandlingthenwhytohavedifferentcatchblockswithsamepieceofcode*/} 最佳答案 是的-这就是为什

Java注解处理: how do I know if a round is the last one?

当扩展AbstractProcessor时,有可能覆盖init(...),但是没有“相反”的方法,它会在所有回合均已处理。这是一个问题:当你必须将每一轮收集的信息附加到同一个文件时,你永远无法关闭该文件,因为你永远不知道什么时候最后一轮是。因此,该文件永远不会关闭并保持为空。使用关闭Hook也不起作用,Hook永远不会被调用。有什么想法吗? 最佳答案 Processor.process方法包含类型为RoundEnvironment的参数.也许是RoundEnvironment.processingOver方法可以提供帮助。

android - 警告 : Do not place Android context classes in static fields; this is a memory leak (and also breaks Instant Run)

Android工作室:DonotplaceAndroidcontextclassesinstaticfields;thisisamemoryleak(andalsobreaksInstantRun)所以2个问题:#1如果没有上下文的静态变量,如何从静态方法调用startService?#2如何从静态方法(相同)发送localBroadcast?例子:publicstaticvoidlog(intiLogLevel,StringsRequest,StringsData){if(iLogLevel>0){Intentintent=newIntent(mContext,LogService.

android - 警告 : Do not place Android context classes in static fields; this is a memory leak (and also breaks Instant Run)

Android工作室:DonotplaceAndroidcontextclassesinstaticfields;thisisamemoryleak(andalsobreaksInstantRun)所以2个问题:#1如果没有上下文的静态变量,如何从静态方法调用startService?#2如何从静态方法(相同)发送localBroadcast?例子:publicstaticvoidlog(intiLogLevel,StringsRequest,StringsData){if(iLogLevel>0){Intentintent=newIntent(mContext,LogService.

java - 什么-XX :-PrintGC and XX:-PrintGCDetails flags do?

我找到了JVM标志here.是否有更详细的解释说明它们到底做了什么? 最佳答案 在Sun上,使用-Xloggc:gc.log来记录到一个文件,-verbose:gc也是一个常用的开关。此外,确保-XX:+PrintGCDetails和-XX:+PrintGCTimeStamps(注意加号+)。时间戳开关是多余的,但最好包含在内。 关于java-什么-XX:-PrintGCandXX:-PrintGCDetailsflagsdo?,我们在StackOverflow上找到一个类似的问题: