一:栈内存
①:每个线程私有,不能实现线程间的共享
②:局部变量放置于栈中
③:栈内存是由系统自动分配的,速度快,栈内存是一个连续的内存空间
二:堆内存
①:放置new出来的对象
②:堆内存是一个不连续的内存空间,分配灵活,速度慢
三:方法区
①:被所有线程共享
②:用来存放程序中永远是不变的或唯一的内容(类代码信息(类的字节码文件,静态变量,字符串常量))
举例:
String name1="王五"; //存放于方法区中的String Pool常量池中
String name2=new String("王五"); //存放于堆内存中



