- 博客(2)
- 问答 (2)
- 收藏
- 关注
原创 String 与 intern理解
1. public static void main(String[] args) { String s = new String("abc"); System.out.println(s == s.intern()); } 在这个代码中,首先创建的String对象是“abc”这个string字面量,然后才是new String 这个对象,为什么?因为在编译期,“abc”就已经
2016-05-07 14:53:52 426
原创 JVM运行时数据区域
基本概念: 每运行一个java程序,就会有一个对应的JVM实例和一个进程,一个进程可以包含多个线程。每个JVM实例(进程)都有自己的堆,每个线程都有自己私有的栈。进程所创建的所有类的实例(也就是对象)或数组(指的是数组的本身,不是引用)都放在堆中,并由该进程所有的线程共享。每一个对象的存储内存都是在堆中分配,而引用就是在栈中,栈里的引用生命周期结束后,马上出栈,而堆中的对象就会等待GC的回收。
2016-05-07 10:05:56 915
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人