Java随笔
zuochanxiaoheshang
这个作者很懒,什么都没留下…
展开
-
Java并行编程
class Particle { protected int x; protected int y; protected final Random rng = new Random(); public Particle(int initialX, int initialY) { x = initialX; y = initialY; } public synchronize原创 2012-10-11 21:35:14 · 1321 阅读 · 0 评论 -
Java ClassLoader
Java类加载 JVM包含三种ClassLoader,Bootstrap ClassLoader、Extension ClassLoader和 Application ClassLoader。其中,Bootstrap ClassLoader用本地语言实现,一般为 C/C++,另外两种用Java语言实现。Bootstrap用于载入Java核心类(所有java.*package 下的类),Exten原创 2012-10-11 21:36:06 · 589 阅读 · 0 评论 -
Java volatile
Volatile关键字主要应用于多线程的情况下,他实现了锁的部分功能。我们知道锁在多线程情境下同时提供两种特性:互斥(mutual exclusion)和可见性(visibility)。互斥,是指在某一时刻只有一个线程拥有该锁,其他线程想要拥有必须等待,直至拥有线程将其释放。可见性是指,拥有锁的线程对共享变量所做的修改必须为其他线程可见,即其他线程所读取的共享变量应该是最新的。 Volatile原创 2012-10-11 21:31:40 · 653 阅读 · 0 评论 -
Java內隐类(Java Inner Class)
內隐类是一个定义在Class中的Class,有static和非static两种。inner class是外部类的一个成员变量。non-static的inner class可以访问外部类的所有变量。因为inner class是外部类的一个成员变量,其可以用public、private、protected和package private等modifier来定义。 Static Nest原创 2012-10-11 21:32:59 · 1029 阅读 · 0 评论 -
Java Memory Model
在程序运行时,每运行一个Java程序会启动一个JVM(Java Virtual Machine)实例。JVM中存在很多线程,这些线程分为两种:daemon和non-daemon。例如,garbage collection线程就是daemon类型的。JVM会一直运行,直至所有non-daemon类型的线程结束。 注意:用户编写的程序,可以将其创建的线程标记为daemon类型的 Ja原创 2012-10-11 21:30:46 · 722 阅读 · 0 评论