一切都是对象

用句柄操纵对象

JVM是怎么通过句柄访问对象的(或者说句柄究竟是个什么东西),给我的感觉就像指针或者引用。也有人说句柄就是“受到了严格限制和防范的指针”。在给方法传参数的时候需要注意。


所有的对象必须创建

程序运行时可以保存数据的六个地方:寄存器、堆栈(对象句柄)、堆(对象)、静态存储(JAVA对象永远不会置于静态存储空间)、常熟存储、非RAM存储。

8种不用new初始化的变量:boolean、byte、short、char、int、floatlong、double。从小到大排序。java里面是没有unsigned类型的,曾今写加密程序的时候在这个问题上的纠结,好菜。另外还有两种高精度:BigInteger、BigDecimal。

Java中new一个数组的时候得到的也是一个“数组句柄”,初始化之后所有对象句柄都为“null”。Java比C++多做了很多的检查。


绝对不要清除对象

Java和C++的作用域有些不同的地方,比如:

public class test {
	public static void main(String[] args){
		{
			int x = 0;
			{
				int x = 1;//报错
			}
		}
	}
}

Java中有“垃圾回收器”,在对象不用的时候它会负责去释放这些内存,所有释放对象这种事情就不用我们操心了。如果每次对象我们知道不用了就释放掉内存,下次需要的时候再重新申请内存,这样会影响效率吧。后面再详细说明。


新建数据类型:类

如果类的成员是主类型,那么即使不明确地进行初始化,也可以保证它们获得唯一的默认值。


方法、自变量和类

是不是新的语言总是不喜欢用旧的语言的说法所有才有了“Method”而不是“Function”?


构建Java程序

文件的可见性,C++中用“命名空间”搞定,而Java中则用一个一个的包来做。在需要其他模块的时候就用“import”引入。这里提了一下“static”这个关键字。具体的特别的地方还是在“初始化”那块详细说明吧。

--------------------------------------霸气的分割线--------------------------------------

昨天晚上通宵了今天也没睡。。。

如有错误,欢迎拍砖。

posted @ 2011-07-23 13:53  GG大婶  阅读(232)  评论(0编辑  收藏  举报