【java】可移植性

Java的可移植性

  • 与 C 和 C++ 不同,Java 规范中没有“ 依赖具体实现” 的地方基本教据类型的大小以及有关运算都做了明确的说明 。
  • 例如,Java 中的 int 永远为 32 位的整数,而在 C/C++ 中, int 可能是 16 位整数、 32 位整
    数, 也可能是编译器提供商指定的其他大小。
  • 唯一的限制只是 int 类型的大小不能低于 short int, 并且不能高于 long int。在 Java 中,数据类型具有固定的大小, 这消除了代码移植时令人头痛的主要问题。
  • 二进制数据以固定的格式进行存储和传输, 消除了字节顺序的困扰。字符串是用标准的 Unicode 格式存储的。
  • 作为系统组成部分的类库, 定义了可移植的接口例如,有一个抽象的 Window类, 并给出了在 UNIX、 Windows 和 Macintosh 环境下的不同实现。
  • 选择 Window 类作为例子可能并不太合适。 凡是尝试过的人都知道, 要编写一个在Windows、 Macintosh 和 10 种不同风格的 UNIX 上看起来都不错的程序有多么困难 Java 1.0 就尝试着做了这么一个壮举,发布了一个将常用的用户界面元素映射到不同平台上的简单工具包。
  • 遗憾的是, 花费了大量的心血,却构建了一个在各个平台上都难以让人接受的库。
  • 原先的用户界面工具包已经重写, 而且后来又再次重写,不过跨平台的可移植性仍然是个问题。
  • 不过,除了与用户界面有关的部分外,所有其他 Java 库都能很好地支持平台独立性。
    你可以处理文件、 正则表达式、 XML、 日期和时间、 数据库、 网络连接、 线程等,而不用操心
    底层操作系统。
  • 不仅程序是可移植的,Java API 往往也比原生 API 质量更高。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值