1. Java数据的存储
1) 寄存器: 位于CPU,不可直接控制
2) 堆栈(The Stack): 位于内存,用于存储基本类型和对象引用。可以通过堆栈指针获得处理器支持,其速度仅次于寄存器,Java系统需要知道存储在堆栈中所有项的生命周期。
3) 堆(The Heap): 位于内存,用于存储Java对象,他更灵活,不需要知道对象的生命周期,但是分配和清理堆需要更多的时间
4) 静态存储区: 存放静态(static)成员
5) 常量存储去: 存放常量(final)成员
6) 非RAM存储: 存放流对象和持久化对象
参见这里: http://zmesky.blog.163.com/blog/static/204247180201222682652635/ 仅供参考,不确保正确
2. 数组
数组会被自动赋予初始值,例如对象是null,基本类型是0
3. 作用域
变量的作用域由花括号决定,例如
{ int a = 1; // only a available { int b = 2; // both a & b available } // only a available // b is "out of scope" }
4. 基本类型默认值
如果基本类型是作为一个class的成员变量,那么他会在被声明但未被初始化时被赋予默认值0,而如果不是类的成员变量,未初始化直接调用他则会出错,例如
class Man { char gender; int age; } Man man = new Man(); System.out.println(man.age); // this is correct int a; System.out.println(a); // this would lead to error
5. javadoc
javadoc是用于生成java文档的工具,他可以通过提取java代码里注释生成html注释文档,常用参数如下
@see classname: 参见其他类,会产生 See Also字段
@version version-info: 在使用javadoc时加入 -version 即可生成 Version 字段
@author author-info: 使用javadoc时加入 -author 即可生成 Author 字段
@since info: 生成Since字段
@param param-name param-description: 写于方法顶部,生成方法参数信息
@return description: 写于方法顶部,生成方法返回值信息
@throws: 写于方法顶部,生成方法抛出异常信息
实例代码:
/** * Test Class * @author alexis * @author cngddflzw@gmail.com * @version version 1.0 * @see java.util.Date * @since JDK 1.6 */ public class Test { static class Man { String name; int age; char g; public Man() {} public Man(String name, int age) { this.name = name; this.age = age; } } /** * Method test for testing javadoc * @param a test param * @return an int */ public int test(int a) { return a; } /** * Test Main Method * @param args test args * @throws exceptions No exception thrown */ public static void main(String[] args) { Man a = new Man(); System.out.println(a.age); int b; } }
生成文档命令
javadoc Test.java -author -version -private -d ./doc
更多使用方法请参见 man javadoc