我刚接受采访,并被要求用Java 创建内存泄漏.
毋庸置疑,我觉得自己很傻,甚至不知道如何开始创建一个.
一个例子是什么?
(1) List<?> myList = new ArrayList<?>();
(2) ArrayList<?> myList = new ArrayList<?>();
Run Code Online (Sandbox Code Playgroud)
我理解,使用(1),可以交换List接口的实现.似乎(1)通常在应用程序中使用而不管需要(我自己总是使用它).
我想知道是否有人使用(2)?
此外,经常(并且我可以得到一个例子)情况实际上需要使用(1)over(2)(即where(2)不足以对接口和最佳实践等进行编码)
Java main()方法的方法签名是:
public static void main(String[] args){
...
}
Run Code Online (Sandbox Code Playgroud)
这种方法是否有理由是静态的?
有人可以通过现实世界的例子解释注释中的隔离和传播参数@Transactional.基本上何时以及为什么我应该选择更改其默认值.
我已将sample.war文件复制到webappsTomcat目录中,我可以访问localhost:8080.
现在Tomcat将如何部署它,我的意思是我需要在浏览器中打开它吗?我该如何访问该应用程序?
是什么区别@RequestParam和@PathVariable同时处理的特殊字符?
+被@RequestParam空间接受了.
在这种情况下@PathVariable,+被接受为+.
当我从IntelliJ运行我们的构建时,它会进行大量的调试.
但它在Run控制台中被截断了.
我可以让IntelliJ保留更多输出吗?
或者,最好是所有这些?
我已经做了几年的Java SE并继续使用Java EE.但是我在理解Java EE的某些方面时遇到了一些麻烦.
Java EE只是一个规范吗?我的意思是:EJB Java EE?
EJB/Spring是不同的Java EE实现?
很抱歉,但是我很难理解Java EE是什么.有人能解释一下Java EE是什么吗?和EJB?
使用包装器类SynchronizedMap,在a HashMap和ConcurrentHashMap?之间有什么区别?它只是能够修改HashMap迭代它(ConcurrentHashMap)吗?
看起来它显示的行数有限制.
我在设置中找不到它.
有没有办法让IDEA在输出窗口中保留所有内容?
java ×8
spring ×2
core ×1
decoupling ×1
ejb ×1
interface ×1
isolation ×1
java-ee ×1
list ×1
memory ×1
memory-leaks ×1
propagation ×1
spring-mvc ×1
static ×1
tomcat ×1
war ×1