1 平台无关

Java体系的支持

  • java平台模拟计算机 通过Java api 获取真实的计算机资源
  • Java语言数据类型与平台无关
  • Java class 格式严格与虚拟机所处的环境无关
  • 可伸缩性  大型机,嵌入式设备(Java本身就是为了嵌入设计的),桌面级  等都可以找到(api   定制化) 

影响平台无关性的因素

  •   可用的Java版本实现和发布版本(Java版本更新可能改变了某些api, 不同平台可能存在该平台特定的api)
  • 本地方法    使用本地方法会使程序平台相关          在调用第三方非标准运行库是要注意是否使用了本地方法
  • 平台独立         1 不依赖及时终结来达到程序的正确性   2 不要依赖线程的优先级来达到程序的正确性(不同虚拟机的垃圾回收机制不同  同步实现线程的调度)
  • 用户界面依赖
  • bug
  • 测试     在不同主机不同Java平台上进行测试

做到最大限度的平台无关性

  • 选择程序要运行的主机和设备的集合
  • 在目标主机上选择自认为最好的Java平台版本 在该版本的Java平台上编写运行程序
  • 对每一个目标主机选择一些程序和将要运行的Java平台实现
  • 编写程序是尽可能使用Java api 的方式访问计算机
  • 设计一个界面是它在你的目标主机上可以正常工作
  • 测试  all

平台无关性和网络移动对象  jini

原文地址:https://www.cnblogs.com/qq2972665955/p/10851190.html

时间: 2024-11-05 22:58:44

1 平台无关的相关文章

SyncML是一平台无关的信息同步标准协议集

SyncML (Synchronization Markup Language)是一平台无关的信息同步标准协议集.分为SyncML数据传输协议(SyncML-DS)和SyncML设备管理协议(SyncML-DM). 现存的大部分同步解决方案绝大部分依赖于某个厂商.应用,或者是某个操作系统,而SyncML的目的就是要提供一个开放标准.目前,该标准已经得到Nokia.Symbian,Motorola,Sony Ericsson.Siemens AG等公司的产品的支持. 手机通讯录的同步和备份是Syn

《深入Java虚拟机学习笔记》- 第2章 平台无关

Java虚拟机学习笔记(二)平台无关 <深入Java虚拟机学习笔记>- 第2章 平台无关,布布扣,bubuko.com

Java的平台无关性

转载自:http://www.cnblogs.com/Y/archive/2011/03/22/JavaVM_Learning_Chapter2_Platform_Independence.html 为什么要平台无关? 废话!当然是方便了,你随手写一个Hello,world!,地球上所有的设备都能显示出来,那多牛B!写hello,world! 你可能觉得没有用,那要是写一句“今年过节不收礼...”,钱是不是就开始掉下来了? Java体系结构对平台(操作系统)无关的支持 这部分是本章中我最觉得有用

深入理解Java虚拟机(一) 理解平台无关性

Write Once Run Anywhere,一次编写多处运行 一.Java的运行机制 如下图所示,Java上层应用程序对平台不透明,采用通用的java编译器将java源程序编译成为与平台无关的字节码文件(class文件),而在运行时由java虚拟机(JVM)对字节码文件解释执行,即Java字节码具有平台无关性,在Java生态体系中的语言,例如Android.Scala等,只要能按照Java的规则编译字节码文件,就能被识别来运行.而多处运行的前提是需要有不同版本的java虚拟机,不同系统平台的

教你一招如何开发平台无关的内核驱动

相信搞过内核驱动开发的人员都面临过这样的问题:为了让上层代码尽可能的不改变,需要底层驱动对上层提供的接口在各种形态上都要保持不变,但是底层的逻辑实现又不可避免的有差异,甚至有些时候在同一款产品形态上都会有很大差异,那么我们此时该如何设计驱动架构,使代码看起来既好看又易于维护呢?接下来我们来具体分析一下. 举一个例子,现在有两种规格的定时器,内部实现逻辑不一样,要操作的寄存器也有差别,那么我现在有三种产品形态,一种形态上使用feature1,一种形态上使用feature2,另一种形态上这两种fea

与平台无关的类型,int8_t,uint8_t

pecific integral type limits Specifier Common Equivalent Signing Bits Bytes Minimum Value Maximum Value int8_t signed char Signed 8 1 −128 127 uint8_t unsigned char Unsigned 8 1 0 255 int16_t short Signed 16 2 −32,768 32,767 uint16_t unsigned short U

为什么说Java语言是平台无关的?

适当的整理了一下: 一.平台与机器指令 无论哪种编程语言编写的应用程序都需要经过操作系统和处理器来完成程序的运行,因此这里的平台是又OS和CPU所构成的,所谓的平台无关就是指软件的运行不会因操作系统.处理器的变化而无法运行或出现运行错误.        每个平台都有自己独特的机器指令,所谓平台的机器指令就是可以被该平台直接识别.执行的一种由0和1组成的序列代码.相同的CPU和不同的OS所形成的平台的机器指令可能是不同的 二.何为与平台相关? C/C++程序是依赖平台的:C/C++源程序所在的特定

深入Java虚拟机之平台无关性

平台无关性: Java体系结构对平台无关性的支持: ①  Java平台 Java平台扮演一个运行时Java程序与其下的硬件和操作系统之间的缓冲角色,Java程序被编译成可运行于Java虚拟机中的二进制程序,并且假定Java API的class文件在运行时都是可用的,接着虚拟机运行程序,那些API则给予程序访问底层计算机资源的能力.无论Java程序被部署到何处,它只需要与Java平台交互,而不需要担心底层的硬件和操作系统.因此,他就能够运行于任何拥有Java平台的计算机. ②  Java语言 Ja

一些平台无关的整型类型,int8_t,uint8_t....

pecific integral type limits Specifier Common Equivalent Signing Bits Bytes Minimum Value Maximum Value int8_t signed char Signed 8 1 −128 127 uint8_t unsigned char Unsigned 8 1 0 255 int16_t short Signed 16 2 −32,768 32,767 uint16_t unsigned short U

什么是Java虚拟机?为什么Java被称作是“平台无关的编程语言”?

回答: Java虚拟机就是一个可以执行Java字节码的虚拟机进程.Java源文件通过javac编译器编译生成能被Java虚拟机执行的字节码文件. Java被设计成允许应用程序可以运行在任意平台,而不需要程序员为每一个平台单独重写或者重新编译.而所谓跨平台就是在不同的平台上安装了不同的JVM,而在不同的平台上.class文件都是一样的,而.class文件再由对应平台的JVM解释成对应平台的机器码执行. 解析: Java的跨平台不是java源程序的跨平台 ,如果是这样,那么所以语言都是跨平台的, j