Java白皮书的关键术语
1.简单性
2.面向对象
将重点放在数据(即对象)和对象的接口上
3.网络技能
Java有一个扩展的例程库,用于处理想HTTP和FTP之类的TCP/IP协议
4.健壮性
Java采用的指针模型可以消除重写内存和损坏数据的可能性
Java绝对是安全的,其原因是用于不会存取一个“坏的”指针,造成内存分配的错误,也不必防范内存泄露
5.安全性
6.体系结构中立
虚拟机有一个选项,可以将使用最频繁的字节码序列翻译成机器码,这一过程称为“即时翻译”
虚拟机可以检测指令序列的行为,以增强其安全性
7.可移植性
Java中的int永远是32位的整数,唯一的限制只是int类型的大小不能低于short int,并且不能高于long int
二进制数据以固定的格式进行存储和传输,消除了字节顺序的困扰。字符串是用标准的Unicode格式存储的
8.解释型
Java解释器可以在任何移植了解释器的机器上执行Java字节码
使用即时编译器将字节码译成机器码
9.高性能
字节码可以(在运行时刻)快速地翻译成运行这个应用程序的特CPU的机器码
即时编译器可以监控经常执行哪些代码并优化这些代码以提高速度;更为复杂的优化是消除函数调用(即内嵌)
即时编译器知道哪些类已经加载,如果基于当前加载的类集,且特定的函数不被覆盖的话就可以内嵌,必要时还可以撤销优化
10.多线程
只要操作系统支持,Java中的线程就可以利用多个处理器
在底层,主流平台的线程实现机制不同
11.动态性
关于Java的常见误解
1.Java是HTML的扩展
Java是一种程序设计语言,HTML的一种描述网页结构的方式;除了用于在网页上放置Java applet的HTML扩展之外,两者没有任何共同之处
2.使用XML,就不需要Java
Java是一种程序设计语言,XML是一种描述数据的方式;Java API对XML处理提供了很好的支持
3.Java是一种非常容易学习的程序设计语言
功能强大的语言都不太好学
4.Java将成为适用于所有平台的通用性编程语言
从理论上讲,完全有可能
5.Java只不过是另一种程序设计语言
Java是一种很好的程序设计语言;有上百种好的程序设计语言没有广泛地流行,而带有明显缺陷的语言,如:C++和VB却大行其道
6.现在有了C#,Java过时了
C#借鉴了Java,从求职广告看,Java仍然是大多事开发者的首选
7.Java是专用的,应该避免使用
虚拟机和类库的原点可以免费获得,但是只能查阅不能修改,也不能再发布,Java是闭源但运转良好
8.Java是解释型的,因此对于关键的应用程序速度太慢了
现在除了像手机这样的“微型”平台之外,Java虚拟机使用即时编译器,因此采用Java编写的“热点”代码其运行速度和C++相差无几
虚拟机的启动速度要慢一些,Java GUI要比本地GUI慢一些,这是因为采用了与平台无关的绘图方式
9.所以的Java程序都可以在网页中运行
所有的Java Applet都可以在网页浏览器中运行,大多数Java程序是运行在Web浏览器之外的独立应用程序
10.Java程序是主要的安全风险
与其他常用的执行平台相比,Java安全得多
11.JavaScript的Java的简易版
JavaScript是一种在网页中使用的脚本语言,JavaScript的语法类似于Java,除此之外,两者没有关系
12.使用Java可以用价值500美元的Internet设备取代电脑
“家庭用户将会放弃功能强大且便利的桌面系统,而使用没有本地存储的网络设备”是一种荒谬的想法