`
leonard1853
  • 浏览: 84671 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Java的点点滴滴

    博客分类:
  • java
阅读更多

2012-03-26

1、Java的基本类型长度是不会随着机器架构的不同而不同的,例如int就是4个字节,这是为了更好的可移植性;

2、什么是栈?什么是堆?(参考自Java编程思想)

栈:位于常规内存区里,处理器通过栈指针对其进行直接访问,移动栈指针可以进行内存空间的创建或者释放,这是仅次于寄存器的最快的分配内存方法。由于Java必须生成控制栈指针移动的代码,所以在编译程序时,那些存储在栈中的数据的大小和生命周期必须是已知的,这使得程序设计就不灵活。所以尽管对象的引用在栈中,但对象本身并不存于栈中。

堆:所有的Java对象都保存在这里。同栈不同,在分配空间时,编译器无需知道需要分配多少空间,也无需知道数据要保存多长时间,这就比栈更灵活。只要你想创建对象,new就行了,程序执行时自然会到堆中分配空间。但分配堆的存储空间比分配栈更慢一些。

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics