重点
Java白皮书的关键术语
1.Java白皮书的关键术语
- 简单性:
- 没有C++语法中的头文件、指针运算、操作符重载等
- Java的目标之一就是支持开发能够在小型机器上独立允许的软件
- 面向对象:Java与C++的主要不同点在于多重继承,Java中使用的是接口概念
- 分布式:Java有丰富的例程库,用于处理HTTP和FTP之类的TCP/IP协议
- 健壮性:
- Java与C/C++最大的不同在于Java采用的指针模型可以消除重写内存和损坏数据的可能性
- Java编译器能够检查许多其他语言中仅在运行时才能够检测出来的问题
- 安全性:一开始Java就设计为能够防范各种攻击,包括病毒导致的运行时堆栈溢出、破坏自己进程空间外的内存等
- 体系结构中立:Java编译器通过生成与特定计算机体系结构无关的字节码指令实现该特性
- 可移植性:
- 在Java中数值类型具有固定的字节数,而C/C++某个数值类型的大小不是固定的。这样二进制数据以固定的格式进行存储和传输,消除了有关字节顺序的困扰
- 在任何虚拟机上运行,同一运算应该得到相同结果
- 解释性:Java解释器可以在任何移植了解释器的机器上直接执行Java字节码
- 高性能:比如即时编译器可以监控哪些代码频繁执行,并且优化这些代码以提高速度
- 多线程
- 动态性:库可以自由地添加新方法和实例变量,并且对客户端没有任何影响