Java白皮书关键词总结

Java白皮书关键词总结,第1张

Java 设计者写过一个很有影响力的白皮书,用来解释设计的初衷。白皮书可以在这里看: 《The Java Language Environment: Contents A White Paper》。

并且发布了一个简短的摘要,摘要分为 11 个术语。摘要中的论述如下

简单性
  • 希望构建学习成本低的编程系统
  • Java剔除了C++中许多很少使用、难以理解、易混淆的特性
  • 没有头文件、指针运算、结构、联合、 *** 作符重载、虚基类等
  • 希望支持开发能够在小型机器上独立运行的软件
面向对象
  • 重点放在数据(对象)和数据的接口上
  • 面向对象的能力与C++一样
  • C++的多重继承在Java中用接口概念取代
  • 与C++相比,Java提供更丰富的运行时自省功能
分布式
  • Java有丰富的库可以处理HTTP之类的TCP/IP协议
  • 通过URL访问网络上的对象,就好像访问本地文件一样
健壮性
  • Java采用的指针模型可以消除重写内存和损坏数据的可能性
  • Java编译器可以检测许多其他语言仅运行时才能检测的问题
安全性
  • 防止运行时堆栈溢出
  • 防止破坏自己的进程空间之外的内存
  • 防止未经授权读写文件
  • 沙箱环境执行
体系结构中立
  • Java编译器生成与特定体系结构无关的字节码
  • 只要有Java运行时系统,字节码就可以在任何机器上解释执行
  • 解释字节码比全速运行机器指令慢
  • 即时编译:虚拟机可以将执行最频繁的字节码序列翻译成机器码
可移植性
  • 与C++不同,Java规范中没有依赖具体实现的地方
  • Java的int永远是32位整数
  • 二进制数据以固定格式存储,消除了字节顺序的困扰
  • Java的字符串用标准Unicode格式存储
  • 除了UI外,其它Java库都可以支持平台独立性
  • 处理文件、正则表达式、XML、日期时间、数据库、网络连接、线程
解释型
  • Java解释器可以再任何移植了解释器的机器上执行Java字节码
  • 链接是一个增量式且轻量级的过程,开发变得快捷且具有探索性
高性能
  • 字节码可以在运行时动态地翻译成运行该应用的特定CPU的机器码
  • 即时编译器可以监控经常执行哪些代码并优化这些代码
  • 即时编译器知道哪些类已经加载,如果特定函数不会被覆盖,则使用内联
多线程
  • 不在追求更快的处理器,而着眼于过得更多处理器
  • web编程需要并发类解决处理器等待服务器响应的问题
动态性
  • 库中可以添加新方法和实例变量而对客户端没有影响
  • 可以将某些代码添加到正在运行的程序中

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1295875.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-10
下一篇 2022-06-10

发表评论

登录后才能评论

评论列表(0条)

保存