JAVA虚拟机 方法区
在Java
虚拟机中,被加载类型的信息都保存在方法区中。这些信息在内存中的组织形式由虚拟机的实现者定义,比如,虚拟机工作在一个“little- endian”
的处理器上,他就可以将信息保存为“little-endian”
格式的,虽然在Java
类文件中他们是以“big-endian”
格式保 存的。设计者可以用最适合并地机器的表示格式来存储数据,以保证程序能够以最快的速度执行。但是,在一个只有很小内存的设备上,虚拟机的实现者就不会占用
很大的内存。
程序中的所有线程共享一个方法区,所以访问方法区信息的方法必须是线程安全
的
。如果你有两个线程都去加载一个叫Lava
的类,那只能由一个线程被容许去加载这个类,另一个必须等待。
在程序运行时,方法区的大小是可变的,程序在运行时可以扩展。有些Java
虚拟机的实现也可以通过参数也订制方法区的初始大小,最小值和最大值。
方法区也可以被垃圾收集。因为程序中的内由类加载器动态加载,所有类可能变成没有被引用(unreferenced
)的状态。当类变成这种状态时,他就可 能被垃圾收集掉。没有加载的类包括两种状态,一种是真正的没有加载,另一个种是“unreferenced”
的状态。
详细信息参见第七章的类的生命周期
(The Lifetime of a Class
)。
1
、类型信息(Type Information
)
每一个被加载的类型,在Java
虚拟机中都会在方法区中保存如下信息:
1
)、类型的全名(The fully qualified name of the type
)
2
)、类型的父类型的全名(除非没有父类型,或者弗雷形式java.lang.Object
)(The fully qualified name
of the typeís direct superclass
)
3
)、给类型是一个类还是接口(class or an interface
)(Whether or not the
type is a class
)
4
)、类型的修饰符(public
,private
,protected
,static
,final
,volatile
,transient
等)(The typeís modifiers
相关文档:
本文包括:
A: servlet源码实例
B: servlet部署
C: 客户端远程调用
D: servlet开发调用工具
A: servlet源码实例
package com.viewlinecn.userlogin.www.servlet;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http ......
windows xp下配置JDK环境变量:
1.安装JDK,安装过程中可以自定义安装目录等信息,例如我们选择安装目录为D:\java\jdk1.5.0_08; 2 ......
一:需要包含的包
import java.security.*;
import java.io.*;
import
java.util.*;
import java.security.*;
import java.security.cert.*;
import sun.security.x509.*
import java.security.cert.Certificate;
import java.security.cert.CertificateFactory;
二:从文件中读取证书
用keytool将 ......
向量的数据类型类似一个数组,但它存储的元素数据类型不要求一致 Vector类是在java.util包中
1.构造方法:Vector()
2.常用方法
public void add(Object o):将对象o添加到向量的末尾
public void add(int index,Object o):将对象o添加到向量的指定位置 ......
花了一个多月用Java NIO写了一个定制的HTTP Server,主要是支持我的WeBuzz.IM网页版聊天服务
。
先介绍一下WeBuzz.IM网页聊天服务。
WeBuzz.IM
是一款网页版即时聊天工具,用于帮助用户通过网页和朋友聊天。Gtalk(Google Talk)
、MSN(Windows Live Messenger)
、Yahoo! Messenger(Yahoo! Chat,又称为雅虎通)
......