`
isiqi
  • 浏览: 16346875 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

各种不同版本之Java 程序的开发

阅读更多

各种不同的Java 版本,在其支援的核心类别函式库之完整性以及所支援的 Java 基本型别这两件事情上都有所差异,也就是说,不管您开发的是企业所使用的Java 程序、嵌入式装置上执行的Java 程序、浏览器上执行的Applet ,或是在PC 上执行的应用程序。您都必须在您的电脑上先安装 J2SE ,然後再安装各种版本的核心类别函式库以及额外的扩充类别函式库,如此才能成功地开发各种不同目的的Java 程序。J2SE所提供的Java 编译器(javac.exe)可以帮助我们编译各种不同平台上的Java 程序,而J2SE 所提供的Java 虚拟机器(java.exe)则可以帮助我们在PC 上先行测试这些程序执行结果的正确与否。另外,Java 编译器并不会帮您检查您的程序是否符合各种平台上所支援的核心类别函式库与 Java基本型别。举例来说,虽然我们在前面说过,Smart Card 版本并不支援boolean byte 以外的Java 基本型别,而且该平台也只支援java.lang.*核心类别,可是当我们在撰写 Smart Card 平台上的程序时,就算在程序码里头用了boolean byte 以外的Java 基本型别,或者使用了java.lang.*之外的其他核心类别,编译器仍然可以照常帮您编译出类别档。这个时候大家一定开始产生疑惑 --那么这些程序如果放到Smart Card 上头执行的时候,出了问题怎么办 ? 难道不会造成Smart Card 上的虚拟机器执行时发生错误吗 ? 针对这个可能发生的潜在问题,Sun Microsystems 在各种不同版本的开发套件中,有些会内附检查器 (checker)或者预先审核器 (preverifier),这两个工具可以帮助您在将程序放到目标平台之前先做好检查和预先审核的工作。检查器会帮您找出类别档之中不合目标平台规格的部分,并提醒你这些地方可能无法在目标平台上执行。因此只要有检查器的协助,您大致上可以确定您的程序可以符合目标平台的规定并顺利执行。 Java Card 的开发套件中就附有检查器。

而某些平台的开发套件则附有预先审核器,预先审核器除了做检查器做的工作之外,还有一项额外的工作,就是减轻目标平台上虚拟机器的负担,要解释预先审核器这个额外的工作,在传统的 Java 程序之中,为了安全上的考量,任何进入执行环境的类别档 (不管该类别档是来自本机或是远端机器 ),都必须先经过Byte Code 审核器(Byte code verifier)的验证,以防止程序在传送途中遭到恶意的修改,而使得 Java 程序在执行时对系统有不良影响。经过审核之後,该类别档才能开始被Java虚拟机器所执行。如果这个审核的动作在一般的 PC 上执行,速度倒是还能够接受,可是一旦放到如 Palm 或是手机这些CPU 较慢、记忆体也比较少的机器上面就显得十分吃力了。为了节省宝贵的 CPU 运算时间(既能省电又能够加速程序执行 ),因此,在程序设计师产生能够让某些特定平台执行的类别档之前,程序设计师必须先在 PC 上使用预先审核器做一些前置的审核工作,预先审核器会在类别档之中加入一些特殊标记或符号。如此一来,当这些程序放到目标平台上执行时,就可以大幅减少在目标平台上做审核时的时间,藉而加速程序的的启动及执行速度。因此在J2ME 之下的程序(Spotlet MIDlet),其执行步骤变成因为预先审核的关系,执行时Byte Code 审核器的工作就变少了,也因此从程序载入到开始执行之间的时间因而缩短。 CLDC标准实作和MIDP 参考实作之中就附有预先审核器。

分享到:
评论

相关推荐

    Java程序开发大全源代码.part2

    《Java程序开发大全:基于MyEclipse平台+Struts+Hibernate+Spring主流框架开发》系统全面地介绍了Java中的各项主流技术,以及基于这些技术的商业化应用程序的开发技巧,在讲解过程中以目前最为流行的开发工具My ...

    Java程序开发大全源代码.part5

    《Java程序开发大全:基于MyEclipse平台+Struts+Hibernate+Spring主流框架开发》系统全面地介绍了Java中的各项主流技术,以及基于这些技术的商业化应用程序的开发技巧,在讲解过程中以目前最为流行的开发工具My ...

    Java程序设计技巧与开发实例.rar

    Java程序设计技巧与开发实例Java程序设计技巧与开发实例Java程序设计技巧与开发实例Java程序设计技巧与开发实例Java程序设计技巧与开发实例

    JAVA程序设计教程第2版.pdf

    该标签包括三个部分:java、开发、程序设计。 知识点: * JAVA 是一种编程语言,主要用于开发大型应用程序。 * JAVA 编程需要学习和掌握各种编程技术和概念,包括基本语法、数据类型、运算符、控制结构、函数、...

    Java程序开发大全源代码.part3

    《Java程序开发大全:基于MyEclipse平台+Struts+Hibernate+Spring主流框架开发》系统全面地介绍了Java中的各项主流技术,以及基于这些技术的商业化应用程序的开发技巧,在讲解过程中以目前最为流行的开发工具My ...

    Java程序开发大全源代码.part1

    《Java程序开发大全:基于MyEclipse平台+Struts+Hibernate+Spring主流框架开发》系统全面地介绍了Java中的各项主流技术,以及基于这些技术的商业化应用程序的开发技巧,在讲解过程中以目前最为流行的开发工具My ...

    Java开发流程(流程图)

    Java开发流程 Java开发流程 Java开发流程 Java开发流程 Java开发流程

    Java Web程序开发范例宝典

    《Java Web程序开发范例宝典》是一本深入探讨Java Web技术的专业书籍,由王国辉、陈丹丹和潘凯华三位专家共同编著。这本书的内容涵盖了Java Web开发的多个重要方面,旨在帮助读者掌握核心技术和实践应用。由于文件...

    Java程序开发大全源代码.part4

    《Java程序开发大全:基于MyEclipse平台+Struts+Hibernate+Spring主流框架开发》系统全面地介绍了Java中的各项主流技术,以及基于这些技术的商业化应用程序的开发技巧,在讲解过程中以目前最为流行的开发工具My ...

    JAVA项目更新升级程序

    综上所述,"JAVA项目更新升级程序"涵盖了Java Web项目的维护、系统升级的设计与实施、多线程编程、版本控制以及一系列的开发最佳实践。理解和掌握这些知识点对于任何Java Web开发者来说都是提升专业技能的关键。

    java 微信小程序demo

    3. **微信小程序开发环境** - 开发者需要下载微信开发者工具,这个工具集成了代码编辑、预览、调试等功能。在Java微信小程序Demo中,可能包含了一个简单的项目结构,展示了如何组织小程序的页面、模型、逻辑和服务...

    JAVA开发常用工具安装包

    Java是一种广泛应用于软件开发的编程语言,为了提高开发效率和质量,开发者需要安装和配置各种开发工具。以下是JAVA开发常用工具安装包的详细介绍: Eclipse Eclipse是最流行的Java开发集成环境(Integrated ...

    JCreator Java程序设计的集成开发环境

    Jcreator是一个用于Java程序设计的集成开发环境,具有编辑、调试、运行Java程序的功能。当前最新版本是Jcreator3.10,它又分为LE和Pro版本。LE版本功能上受到一些限制,是免费版本。Pro版本功能最全,但这个版本是一...

    java程序设计精编教程

    通过理解JDK和JRE的角色,掌握Java程序开发步骤,以及类和对象的概念,开发者可以更有效地进行Java编程。同时,理解不同Java版本的应用范围和源文件命名规则,也有助于提高开发效率和代码组织。

    雍俊海 Java程序设计教程 课后答案

    Java程序设计是软件开发的基础,尤其对于初学者来说,掌握好Java语言的语法和编程思想至关重要。雍俊海的《Java程序设计教程》是一本深受读者欢迎的教材,其第二版更加深入浅出地讲解了Java的核心概念和技术。课后...

    Java网络程序设计

    本书概念性强,结构清晰,在论述中兼顾各类用户、不同的操作系统,并辅以大量的程序代码、图解及图表,同时提供大量的相关信息供读者参阅,是Java高阶编程人员的得力助手,也可作为从事Java程序开发的各类人员的参考...

    JAVA程序与PLC之间的通信

    在现代工业自动化领域,Java程序与PLC(可编程逻辑控制器)之间的通信是实现设备控制、数据采集和系统集成的关键技术。本资料包提供了一种详细的说明,旨在帮助你理解和实施这种通信方式。 首先,我们要了解Java...

    Java B/S 抽奖程序

    总的来说,Java B/S 抽奖程序是一个结合了前端交互设计和后端逻辑处理的综合性项目,它展示了Java在Web开发领域的强大能力。无论是对于初学者还是经验丰富的开发者,这样的程序都提供了学习和实践的绝佳机会。通过对...

Global site tag (gtag.js) - Google Analytics