关于Java技术的讨论似乎无处不在,但Java技术究竟是什么呢?以下各节说明Java技术既是编程语言,又是平台,并概述了该技术可以为您做什么。
- 关于Java技术
- Java技术可以做什么?
- Java技术将如何改变我的生活?
关于Java技术
Java技术既是编程语言,又是平台。Java编程语言
Java编程语言是一种高级语言,可以用以下所有流行术语来描述其特征:
- 简单 - 面向对象 - 分布式 - 多线程 - 动态 |
- 架构中立 - 可移植 - 高性能 - 强大的 - 安全 |
---|---|
James Gosling和Henry McGilton撰写的白皮书《 Java语言环境》(Java Language Environment)中解释了上述每个流行术语 。
在Java编程语言中,首先将所有源代码编写为以.java
扩展名结尾的纯文本文件。然后,这些源文件由javac
编译器编译为.class
文件。一个.class
文件不包含处理器固有的代码; 相反,它包含字节码 -Java虚拟机1(Java VM)的机器语言。然后,java
启动器工具将使用Java虚拟机的实例运行您的应用程序。
软件开发过程的概述
因为Java VM在许多不同的操作系统上都可使用,所以相同的.class
文件能够在Microsoft Windows,Solaris™操作系统(Solaris OS),Linux或Mac OS上运行。虚拟机(例如 Java SE HotSpot概览)在运行时执行的一些其他步骤,提高应用程序的性能。这包括各种任务,例如查找性能瓶颈和重新编译(使用本机代码)经常使用的代码部分。
通过Java VM,同一应用程序能够在多个平台上运行
Java平台
平台是程序运行的硬件或软件环境。我们已经提到了一些最受欢迎的平台,例如Microsoft Windows,Linux,Solaris OS和Mac OS。可以将大多数平台描述为操作系统和基础硬件的组合。Java平台与大多数其他平台的不同之处在于,它是一个基于软件的平台,可以在其他基于硬件的软件平台上运行。
Java平台具有两个组件:
- Java虚拟机
- Java应用程序编程接口(API)
已经向您介绍了Java虚拟机。它是Java平台的基础,并已移植到各种基于硬件的平台上。
API是大量现成的软件组件的集合,这些组件提供了许多有用的功能。它分为相关类和接口的库。这些库称为软件包。下一节, Java技术可以做什么?突出显示了API提供的一些功能。
API和Java虚拟机将程序与底层硬件隔离
作为独立于平台的环境,Java平台可能比本地代码慢一些。但是,编译器和虚拟机技术的进步正在使性能接近本机代码,而不会威胁可移植性。
术语“ Java虚拟机”和“ JVM”表示Java平台的虚拟机。
Java技术可以做什么?
通用的高级Java编程语言是功能强大的软件平台。Java平台的每个完整实现都为您提供以下功能:
- 开发工具:开发工具提供了编译,运行,监视,调试和记录应用程序所需的一切。作为新开发人员,您将使用的主要工具是
javac
编译器,java
启动器和javadoc
文档工具。 - 应用程序编程接口(API):API提供Java编程语言的核心功能。它提供了许多有用的类,您可以在自己的应用程序中使用。它涵盖了从基本对象到网络和安全性,再到XML生成和数据库访问等各个方面。核心API非常大;要获得其包含的概述,请查阅 Java Platform Standard Edition 8文档。各jdk版本文档为Java Platform, Standard Edition Documentation。
- 部署技术:JDK软件提供了标准机制,例如Java Web Start软件和Java Plug-In软件,用于将应用程序部署到终端用户。
- 用户界面工具包:JavaFX,Swing和Java 2D工具包使创建复杂的图形用户界面(GUI)成为可能。
集成库:诸如Java IDL API,JDBC API,Java命名和目录接口(JNDI)API,Java RMI和基于Internet ORB协议技术(Java RMI-IIOP Technology)的Java远程方法调用之类的集成库,可实现数据库访问和操作远程对象。
Java技术将如何改变我的生活?
如果您学习Java编程语言,我们无法保证您会成名,发迹,甚至无法工作。不过,与其他语言相比,它可能会使您的程序更好,并且所需的工作更少。我们相信Java技术将帮助您完成以下任务:
快速入门:尽管Java编程语言是一种功能强大的面向对象的语言,但它易于学习,特别是对于已经熟悉C或C ++的程序员而言。
- 编写更少的代码:通过比较程序指标(类计数,方法计数等),可以看出,用Java编程语言编写的程序,比使用C ++编写的同一程序小四倍。
- 编写更好的代码:Java编程语言鼓励良好的编码习惯,而自动垃圾回收可以帮助您避免内存泄漏。它的面向对象,其JavaBeans™组件体系结构,以及范围广泛、易于扩展的API使您可以重用现有的,经过测试的代码,并减少错误。
- 更快地开发程序:Java编程语言比C ++更简单,因此,用它编写时,您的开发时间可能会快两倍。且您的程序只需更少的代码行。
- 避免平台依赖性:通过避免使用其他语言编写的库,可以使程序具有可移植性。
- 一次编写,可在任何地方运行:因为用Java编程语言编写的应用程序被编译为与机器无关的字节码,所以它们可以在任何Java平台上一致地运行。
- 更轻松地分发软件:使用Java Web Start软件,用户只需单击一下鼠标即可启动您的应用程序。启动时会自动进行版本检查,以确保用户始终保持软件最新版本。如果有更新,则Java Web Start软件将自动更新并安装。