草庐IT

Final-Metaverse-Fantasy

全部标签

java - java中final局部变量的使用

这个问题在这里已经有了答案:Whywouldonemarklocalvariablesandmethodparametersas"final"inJava?[closed](12个回答)关闭6年前。我想知道使用最终局部变量是否有用。当继承出现时,变量无论如何都不会被覆盖。例如下面的简单代码publicstaticvoidmain(Stringargs[]){finalStringdata="HelloWorld!";System.out.println(data);}这个例子很简单,可能不是相关代码,但问题更笼统。我见过很多代码(所有代码都包含在具有最终局部变量的主函数中)是否有声明局

Java:catch 的含义(final SomeException e)?

final在下面的Java表达式中做了什么?catch(finalSomeExceptionTypee) 最佳答案 基本意思是:将“SomeExceptionType”捕获到变量“e”中,并promise在处理异常期间我们不会为“e”分配不同的异常。大多数情况下这是矫枉过正,就好像我正在将异常捕获到临时变量名中(e仅对异常处理block有效),我不必如此严格地监管自己,以免自己不相信自己分配同一变量名的不同(可能已创建)异常。也就是说,也许这个block是由一群志同道合的人大量维护的,一个人只是想非常确定e是最初捕获的异常。----

Java:catch 的含义(final SomeException e)?

final在下面的Java表达式中做了什么?catch(finalSomeExceptionTypee) 最佳答案 基本意思是:将“SomeExceptionType”捕获到变量“e”中,并promise在处理异常期间我们不会为“e”分配不同的异常。大多数情况下这是矫枉过正,就好像我正在将异常捕获到临时变量名中(e仅对异常处理block有效),我不必如此严格地监管自己,以免自己不相信自己分配同一变量名的不同(可能已创建)异常。也就是说,也许这个block是由一群志同道合的人大量维护的,一个人只是想非常确定e是最初捕获的异常。----

java - "Cannot subclass the final class"错误,但类不是最终的

已结束。这个问题是notreproducibleorwascausedbytypos.它目前不接受答案。此问题是由拼写错误或无法再重现的问题引起的。虽然类似的问题可能是on-topic在这里,这个问题的解决方式不太可能帮助future的读者。关闭3年前。Improvethisquestion这是我的代码:packagebasic;publicabstractclassEntity{}packagecharacters;importbasic.Entity;publicabstractclassCharacterextendsEntity{}packageplayer;publiccla

java - "Cannot subclass the final class"错误,但类不是最终的

已结束。这个问题是notreproducibleorwascausedbytypos.它目前不接受答案。此问题是由拼写错误或无法再重现的问题引起的。虽然类似的问题可能是on-topic在这里,这个问题的解决方式不太可能帮助future的读者。关闭3年前。Improvethisquestion这是我的代码:packagebasic;publicabstractclassEntity{}packagecharacters;importbasic.Entity;publicabstractclassCharacterextendsEntity{}packageplayer;publiccla

java - final 关键字究竟对并发性有什么保证?

我想我已经读过字段上的final关键字保证如果线程1实例化包含该字段的对象,那么如果线程2具有对该对象的引用,那么线程2将始终看到该字段的初始化值(前提是其构造正确)。它还在JLS中说[Thread2]willalsoseeversionsofanyobjectorarrayreferencedbythosefinalfieldsthatareatleastasup-to-dateasthefinalfieldsare.(section17.5ofJLS)这意味着如果我有A类classA{privatefinalBb=newB();privateintaNotFinal=2;...和B

java - final 关键字究竟对并发性有什么保证?

我想我已经读过字段上的final关键字保证如果线程1实例化包含该字段的对象,那么如果线程2具有对该对象的引用,那么线程2将始终看到该字段的初始化值(前提是其构造正确)。它还在JLS中说[Thread2]willalsoseeversionsofanyobjectorarrayreferencedbythosefinalfieldsthatareatleastasup-to-dateasthefinalfieldsare.(section17.5ofJLS)这意味着如果我有A类classA{privatefinalBb=newB();privateintaNotFinal=2;...和B

java - 为什么将类定义为 final 会提高 JVM 性能?

引自http://sites.google.com/site/gson/gson-design-document:WhyaremostclassesinGsonmarkedasfinal?WhileGsonprovidesafairlyextensiblearchitecturebyprovidingpluggableserializersanddeserializers,Gsonclasseswerenotspecificallydesignedtobeextensible.Providingnon-finalclasseswouldhaveallowedausertolegitim

java - 为什么将类定义为 final 会提高 JVM 性能?

引自http://sites.google.com/site/gson/gson-design-document:WhyaremostclassesinGsonmarkedasfinal?WhileGsonprovidesafairlyextensiblearchitecturebyprovidingpluggableserializersanddeserializers,Gsonclasseswerenotspecificallydesignedtobeextensible.Providingnon-finalclasseswouldhaveallowedausertolegitim

java - "public static final"对于 Java 接口(interface)中的常量是否是多余的?

这段代码:interfaceConfig{intMAX_CONN=20;}按我的预期编译和工作。看起来和下面的一样:interfaceConfig{publicstaticfinalintMAX_CONN=20;}对于Java接口(interface)中的常量,“publicstaticfinal”是多余的吗?Java1.1、1.2、1.3、1.4、...、1.8是这样吗?还是在Java版本中发生了变化? 最佳答案 在接口(interface)中声明的变量是隐式的publicstaticfinal。这就是JLS9.3说:Everyf