Java学习笔记-《Java程序员面试宝典》-第四章基础知识-4.1基本概念(4.1.1)

4.1.1Java语言的优点

<1.Everything is object.纯面向对象的语言。

<2.平台无关性。一次编译,多处运行。

Java为解释性语言,java代码被编译器解释成为中间代码,运行在Java虚拟机上,与平台无关。

<3.许多内置类库,缩短开发时间。

最重要提供垃圾回收器,解放内存管理。

Java的垃圾回收器在堆上为Java程序提供内存分配和内存回收服务。某一时间节点,一块内存有一个以上的引用(reference指向它),就说他活着,否则就认为死了,可以被垃圾回收器回收,因为内存回收也需要消耗CPU、时间、线程等,所以垃圾回收操作并不是在对象释放完马上发生,而是在内存消耗完或者内存占用达到某个指标(如0.75等)触发垃圾回收操作,但是有一个例外,java.lang.Thread类的对象即使没有引用,只要线程还在运行,就不会被回收。

回收的机制

Java大多数对象的生命周期都短暂的,所以Java内存分代管理。分代的目的就是为不同代的的内存块运用不同的管理策略(算法),最大化性能。相对于年老代,年轻代要小很多,回收的频率高,速度快。年老代则回收率低,耗时长。内存在年轻代里面分配,年轻代里面的对象经过多个回收周期依然存活的自动晋升到年老代。

<4.提供了对Web应用开发的支持。Servlet、JSP等。

<5.较好的安全性和健壮性。

Java语言提供了一个防止恶意代码攻击的安全机制(数组边界检测和bytecode校验等)。Java的强类型机制(对待类型是严格的,任何数值传递都是进行类型相容性检测,在完成编译前保证类型兼容),垃圾回收器、异常处理和安全检查机制是的java语言的程序有很强的健壮性。
Java安全检查机制
类加载器负责把类文件加载到Java虚拟机中,在这个过程中需要检验该类文件是否符合类文件规范。字节码校验器负责检查类文件的代码是否存在某些非法字符,校验通过由 Java解释器负责把类文件解释成机器码进行执行。
JVM在上边的操作过程使用了“沙箱”模型,即把Java程序代码和数据都限制起来放在一定的内存空间执行,不允许程序访问内存空间以外的内存。这种访问不仅是本地的,也可以是远程的。

<6.去除了C++中难以理解、容易混淆的很多特性,例如头文件、指针、结构等。

今天的学习就先到这里,每天一篇博文,记录自己的成长,加油!
参考网址:
http://www.doc88.com/p-700202438717.html
http://blog.csdn.net/kimylrong/article/details/18265807























  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值