一.JVM包含三个内存区:栈内存.堆内存.方法区内存 二.注意点 (1)在MyEclipse中字体是红色的是一个类的名字,并且这个类除了我们自定义的类是JavaSE类库中自带的 (2)其实JavaSE类库中自带的类,例如:String.class\System.class,这些类的类名也是标识符 (3)只要是类名就一定是标识符 内存分析举例: public class D29_{ public static void main(String[] args) { int a = 10; int b…
一.内存分析 代码:引用可以是局部变量也可以是成员变量 public class Test1{ public static void main(String[] args){ User u = new User(); u.no = 40; u.name = "ajflasd "; u.address = new address(); //name.no都是引用,它们存储的是堆内存中对应实例变量的地址 } } 二.对象之间建立关系 public class D34_husband_and…
TransactionLock mockLock = new TransactionLock() { public boolean lock(String id) { return true; } public void unlock() {} }; transaction.setTransactionLock(mockLock); That's an anonymous class. From Java in a Nutshell An anonymous class is a local c…
背景:听说Java运行时环境的内存划分是挺进BAT的必经之路. 内存划分: Java程序内存的划分是交由JVM执行的,而不像C语言那样需要程序员自己买单(C语言需要程序员为每一个new操作去配对delete/free代码),放权给JVM虚拟机处理有利也有弊,好处是不容易出现内存泄漏和内存溢出问题,坏处就是自己的屁股不能自己擦,万一有一天JVM罢工不释放了,还是自个忘了释放,So了解虚拟机容易引起内存泄漏和溢出的场景对Java程序员来说还是必不可少的.[内存溢出:Out Of Memmory,系统…
一.Java创建对象时将对象存放到内存的堆中. 创建对象时先执行类成员的初始化,然后才会调用构造函数初始化对象, package com.test.createsort; public class CreateObjectSort { public static void main(String[] args) { test t = new test("testest"); System.out.println(t); }}class test{ private String name…