小编Joh*_*int的帖子

盒装基元和等价

所以我今天被问到这个问题.

Integer a = 3;
Integer b = 2;
Integer c = 5;
Integer d = a + b;
System.out.println(c == d);
Run Code Online (Sandbox Code Playgroud)

这个节目打印出来的是什么?它返回true.我回答它总会打印出来,因为我理解自动(和自动联合)拳击.我的印象是,分配整数a = 3将创建一个新的整数(3),以便==将评估参考而不是原始值.

有谁能解释一下?

java autoboxing equivalence

15
推荐指数
4
解决办法
4822
查看次数

ClassLoader泄漏 - 他们值得解决吗?

ClassLoader泄漏通常会导致java.lang.OutOfMemoryError:PermGen.在处理应用程序服务器的过程中,您可能会看到这是许多重新部署常见应用程序的结果.可以在这两个链接上看到对此问题的解释和可能的解决方案.(其中包括)

http://dev.eclipse.org/blogs/memoryanalyzer/2008/05/17/the-unknown-generation-perm/ http://blogs.oracle.com/fkieviet/entry/classloader_leaks_the_dreaded_java

现在大部分时间他们很容易绕过.只需增加-XX:MaxPermSize,当不可避免的情况发生时,完全重启JVM.尝试解决这个问题的问题是,在大型应用程序中,许多类可能导致类加载器泄漏,因此类仍然保留在permgen中.

由此产生两个问题:

是否合理地说这样的问题更好地增加最大烫发大小并在必要时重新启动或者应该找到更高优先级的解决方案?

有没有更简单的方法来解决类加载器泄漏?

java memory-leaks application-server classloader

13
推荐指数
2
解决办法
4576
查看次数

JSTL会话查找 - 密钥具有期间

我正在使用一些遗留代码,并且在某些时候会话中有一个关键字

session.setAttribute("com.org.something.Object",someObject);
Run Code Online (Sandbox Code Playgroud)

现在尝试使用jstl在jsp中访问它是有点困难,因为我尝试它,就像我通常会做的那样:

${sessionScope.com.org.something.Object.someFieldGetter}
Run Code Online (Sandbox Code Playgroud)

我们大多数人都可以想象它会失败,因为会话范围中没有com对象.我也试过了

${sessionScope.'com.org.something.Object'.someFieldGetter} 
Run Code Online (Sandbox Code Playgroud)

并且抛出了解析错误.

有谁知道如何解决这个问题,以便我可以正确地获得对象,session.getAttribute("com.org.something.Object")但通过jstl?

谢谢.

jsp jstl el

7
推荐指数
1
解决办法
1874
查看次数

静态内部类需要导入注释

所以我正在进行一些jUnit测试,并希望编写具有类似功能但又足够小以在单个类中编写的不同类.无论设计决定如何,它都会给我带来编译错误,我不确定我看到的规则是什么.

你可以想象它看起来像

package foo;

@RunWith(Suite.class)
@SuiteClasses({ TestClassOne.class, TestClassTwo.class })
public class TestSuite{

   @RunWith(SpringJUnit4ClassRunner.class)
   public static class TestClassOne{

   }

   @RunWith(SpringJUnit4ClassRunner.class)
   public static class TestClassTwo{

   }
}
Run Code Online (Sandbox Code Playgroud)

现在,当编译器踢它时,它会说TestClassOne无法解析为一个类型.有一种简单的方法可以解决这个问题.例如,它需要对静态类进行明确的导入.

import foo.TestSuite.TestClassOne; 
import foo.TestSuite.TestClassTwo; 
Run Code Online (Sandbox Code Playgroud)

我的问题是,任何人都可以解释一下编译器规则或原因可能会使注释无法看到类静态内部类.请记住,包私有类很好,并且无需导入即可编译.

java compiler-construction annotations inner-classes

5
推荐指数
2
解决办法
4332
查看次数

多线程的内存注意事项

我正在 C/C++ 上实现 am 算法来处理一些向量,我认为使它并行可能是一个好主意,因为我正在使用多核 CPU。我对 GPGPU 有一些经验,内存访问不好会破坏整个性能,我是否还需要考虑 CPU 内核之间的任何特殊访问布局?

谢谢

c++ memory cpu performance multithreading

3
推荐指数
1
解决办法
1094
查看次数