发布于2026-07-16 阅读(0)
扫一扫,手机访问
这一节,我们会快速梳理Ja va的来龙去脉。从它的诞生背景、技术体系,到它在各领域的实际应用,再到语言的核心特性、工作机制(虚拟机、垃圾回收)、开发工具链——几乎是零基础入门Ja va必备的全景图。先看几个关键词:Ja va简史、技术体系平台、应用领域、语言特征、JVM与GC机制、JDK/JRE/JVM的层级关系、注释规范、API文档,以及常用IDE。好,一个个展开。
Ja va由Sun公司(Stanford University Network,斯坦福大学网络公司)于1995年推出,是一门高级编程语言。它天生就是为了互联网而生的——早期最吸引人的一点是,Ja va程序可以在Web浏览器里运行,这种程序叫作Ja va小程序(applet)。applet拥有现代图形用户界面,能与Web用户实时交互,并且直接嵌入在HTML代码中。随着Ja va在Web方向的不断成熟,它已经成了Web应用程序的首选开发语言。
后台开发的语言阵营里,Ja va与PHP、Python、Go、Node.js并列,但论企业级应用的占有率,Ja va长期稳居前列。
Ja va SE(Ja va Standard Edition,标准版):支持桌面级应用(如Windows下的应用程序),提供完整的Ja va核心API,以前称为J2SE。
Ja va EE(Ja va Enterprise Edition,企业版):为开发企业环境下的应用程序提供解决方案,包含Servlet、JSP等技术,主要面向Web应用,以前称为J2EE。
Ja va ME(Ja va Micro Edition,小型版):支持Ja va程序运行在移动终端(手机、PDA),对API有所精简,并加入了针对移动终端的支持,以前称为J2ME。
Ja va Card:支持小程序(Applets)运行在小内存设备(如智能卡)上的平台。
企业级应用:复杂的大企业软件系统、各类网站。Ja va的安全机制与跨平台优势,使其在分布式系统领域开发中广泛应用,覆盖金融、电信、交通、电子商务等行业。
Android平台应用:Android应用使用Ja va语言编写,Android开发水平高低很大程度上取决于Ja va核心能力是否扎实。
大数据平台开发:Hadoop、Spark、Storm、Flink等框架及中间件(Flume、Kafka、Sqoop等)大多用Ja va编写,同时提供Ja va、Scala、Python、R等语言API。
移动领域应用:主要体现于消费和嵌入式领域,包括手机、PDA、机顶盒、汽车通信设备等。
Ja va之父詹姆斯·高斯林(James Gosling)团队在开发“Green”项目时,发现C语言缺少垃圾回收系统,也没有可移植的安全性、分布式和多线程功能。最终,他们想要一种易于移植到各种设备上的平台。
Ja va从C和C++继承了很多成分——变量声明、操作符形式、参数传递、流程控制等几乎完全相同。但同时,Ja va是纯粹的面向对象语言,继承了C++面向对象的核心。它舍弃了容易引起错误的指针(以引用取代)、运算符重载、多重继承(以接口取代),并增加了垃圾回收器自动回收不再被引用的对象所占据的内存。JDK 1.5又引入了泛型、类型安全的枚举、不定长参数和自动装/拆箱。
易学:语法与C/C++接近,大多数程序员很容易上手。
强制面向对象:提供类、接口、继承等原语,只支持类之间的单继承,但支持接口间的多继承及类与接口的实现机制(关键字 implements)。
分布式:支持Internet应用开发,基本API中提供网络编程接口(ja va.net),包括URL、URLConnection、Socket、ServerSocket,RMI(远程方法激活)也是分布式开发的重要手段。
健壮:强类型机制、异常处理、垃圾自动收集保证了健壮性。丢弃指针是明智之举。
安全:常用于网络环境,提供安全机制防恶意代码攻击,如类加载器(ClassLoader)分配不同名字空间防止替代本地同名类,以及字节码检查。
体系结构中立:.ja va文件被编译为字节码(.class),可在任何实现了Ja va平台的系统中运行。
解释型:字节码在Ja va平台上的解释器中运行。
性能略高:相比解释型高级脚本语言,Ja va性能较优。
原生支持多线程:线程是一种特殊对象,须由Thread类或其子类创建。
特点一:面向对象
两个基本概念:类、对象。三大特性:封装、继承、多态。
特点二:健壮性
吸收了C/C++的优点,去掉了影响程序健壮性的部分(如指针、内存申请与释放),提供了相对安全的内存管理和访问机制。
特点三:跨平台性
“Write once, Run Anywhere”。原理:在需要运行Ja va应用程序的操作系统上先安装Ja va虚拟机(JVM),由JVM负责程序在该系统中的运行。
JVM是一个虚拟计算机,具有指令集并使用不同存储区域,负责执行指令、管理数据、内存和寄存器。不同平台有不同的虚拟机。只有某平台提供了对应的JVM,Ja va程序才能在此平台运行。JVM机制屏蔽了底层运行平台的差别,实现了“一次编译,到处运行”。
不再使用的内存空间需要回收——这就是垃圾回收。在C/C++中由程序员负责回收无用内存,而Ja va消除了程序员回收无用内存的责任:它提供一个系统级线程跟踪存储空间的分配情况,并在JVM空闲时检查并释放可被释放的存储空间。垃圾回收在Ja va程序运行过程中自动进行,程序员无法精确控制和干预。需要注意的是:Ja va程序仍然可能出现内存泄漏和内存溢出问题。
JDK = JRE + 开发工具集(例如Ja vac编译工具等)
JRE = JVM + Ja va SE标准类库
注释是用于注解说明程序的文字。Ja va中有三种注释类型:
// 注释文字/* 注释文字 */(注意多行注释内不允许嵌套多行注释)/** ... */,其中可包含 @author 指定作者,@version 指定版本。文档注释内容可被JDK提供的 ja vadoc 工具解析,生成网页形式的说明文档。注释不仅提高了代码的阅读性,也是调试程序的重要方法。好的程序员习惯先通过注释整理思路,再用代码去体现。对于单行和多行注释,被注释的文字不会被JVM解释执行。
API(Application Programming Interface,应用程序编程接口)是Ja va提供的基本编程接口。Ja va语言提供了大量基础类,Oracle也为这些类提供了对应的API文档,告诉开发者如何使用这些类及类中的方法。可以从Oracle官网下载:
http://www.oracle.com/technetwork/ja va/ja vase/downloads/index.html,在“Additional Resources”中找到Ja va SE 8 Documentation下载。
文本编辑工具:记事本、UltraEdit、EditPlus、TextPad、NotePad++等。
集成开发环境(IDE):JBuilder、NetBeans、Eclipse、MyEclipse、IntelliJ IDEA等。其中IntelliJ IDEA是目前社区和企业级开发中最流行的选择。
下一篇:java 版本含义
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
8