当前位置:

首页 > 编程开发 > java入门学习之java简介

java入门学习之java简介

JA VA入门学习之ja va简介 一、JA VA之父 说起Ja va,就不得不提它的缔造者——James Gosling博士。这位被尊称为“Ja va技术之父”的科学家,当年在Sun公司研究院任职时,亲手设计了Ja va语言,并完成了其最初的编译器和虚拟机。可以说,没有他,就没有Ja va的诞生。

本文目录

    JA VA入门学习之ja va简介

    一、JA VA之父

    说起Ja va,就不得不提它的缔造者——James Gosling博士。这位被尊称为“Ja va技术之父”的科学家,当年在Sun公司研究院任职时,亲手设计了Ja va语言,并完成了其最初的编译器和虚拟机。可以说,没有他,就没有Ja va的诞生。

    在他的远见和推动下,Ja va从一个项目构想,逐步成长为互联网编程的标准范式,乃至分布式企业级应用领域无可争议的事实标准。其“一次编写,到处运行”的跨平台特性,为整个网络计算时代带来了革命性的变化。如今,Gosling博士依然活跃在技术前沿,专注于让软件开发工具变得更强大、更易用,从而帮助开发者更高效地构建应用与服务。

    二、发展历程

    这杯咖啡改变了世界

    Ja va的故事,始于1995年5月。当时,Sun Microsystems公司正式向世界推出了Ja va程序设计语言及其平台。很快,一款用Ja va编写的HotJa va浏览器(支持Ja va小程序)横空出世,它生动展示了Ja va的魔力:跨平台、动态的Web交互能力。这瞬间吸引了全行业的目光,主流浏览器纷纷开始支持Ja va,从而极大地推动了早期互联网的蓬勃发展。

    当然,Ja va技术本身也从未停止进化的脚步。那么,Ja va平台究竟由什么构成呢?其核心在于两部分:Ja va虚拟机(JVM)和Ja va应用编程接口(API)。API为Ja va程序提供了一个独立于操作系统的统一接口,分为基础部分和扩展部分。只要在任意硬件或操作系统上安装了Ja va平台,Ja va应用程序就能在上面运行。如今,Ja va平台几乎被内置在所有主流操作系统中,这才真正实现了“编译一次,处处运行”的梦想。

    Ja va API的版本从1.1x一路迭代到1.2版。目前业界广泛采用的平台基于Ja va 1.4,而最新的版本已经发展到了Ja va 1.7。

    回望更早的1991年,这个故事的开端其实颇为有趣。Sun公司的James Gosling、Bill Joe等人,最初是为了给电视、烤面包机等家用电器开发一个名为“Oak”(橡树)的交互软件。不过,这个项目在当时并未激起太大水花。

    转机出现在1994年。随着互联网和万维网(WWW)的爆炸式增长,团队用Ja va(当时仍叫Oak)技术编写了HotJa va浏览器。这个演示得到了Sun公司CEO Scott McNealy的力挺,项目得以全力推进。出于市场推广和法律层面的考虑,Oak在1995年正式更名为“Ja va”。

    关于“Ja va”这个名字的由来,还有一段广为流传的趣闻:据说,命名当天,小组成员正在喝咖啡,有人提议用“Ja va”(印度尼西亚一个盛产咖啡的岛屿)来命名这门新语言,这个充满香气的提议获得了大家的一致赞同。从此,这杯“咖啡”香飘万&里。

    改名后的Ja va迅速获得了工业界的青睐,IBM、Microsoft、DEC等科技巨头纷纷购买了Ja va的使用权。它还被美国《PC Magazine》杂志评为1995年十大优秀科技产品。自此,Ja va开启了属于它的辉煌篇章。

    三、JA VA的技术结构

    经过多年的发展,Ja va形成了清晰的三层技术体系架构,以适应不同的应用场景:

    Ja vaSE (Ja va 2 Platform Standard Edition):这是Ja va平台的标准版,提供了核心的API和运行时环境,是Ja va技术的基础,适用于桌面和普通服务器环境。

    Ja vaEE (Ja va 2 Platform, Enterprise Edition):这是企业版,在SE的基础上,增加了大量用于开发大规模、分布式、多层企业级应用的API和规范,如Servlet、JSP、EJB等。

    Ja vaME (Ja va 2 Platform, Micro Edition):这是微型版,专门为嵌入式设备和移动终端(如早期的手机、PDA)等资源受限的环境而设计。

    四、JA VA跨平台的原理

    Ja va那句著名的“Write Once, Run Anywhere”口号,其魔力根源就在于Ja va虚拟机——JVM。所有的Ja va程序都不是直接在操作系统上运行的,而是在JVM这个“中间层”上执行的。

    JVM就像一个精通多国语言的万能翻译官,它负责将Ja va字节码“翻译”成当前操作系统能够理解的指令。正是它,屏蔽了Windows、Linux、macOS等不同操作系统底层的差异。因此,开发者只需编写一次代码,编译成标准的字节码,就可以在任何安装了对应版本JVM的系统上运行,从而实现了真正的跨平台。

    JDK、JRE、JVM的介绍

    这里需要理清三个核心概念的关系:

    JVM(Ja va Virtual Machine):Ja va虚拟机,是实现跨平台能力的基石。

    JRE(Ja va Runtime Environment):Ja va运行时环境。光有JVM还无法运行普通的Ja va程序,JRE = JVM + 核心类库。它是运行已开发好的Ja va程序所必需的环境。

    JDK(Ja va Development Kit):Ja va开发工具包。如果你要开发Ja va程序,就需要它。JDK = 开发工具(如编译器ja vac) + JRE。所以JDK是功能最完整的套装。

    本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系bd@zhengruan.com
    作者最新文章
    编程开发 Java
    相关文章 更多
    Java单元测试入门:使用JUnit 5编写第一个测试用例
    Java单元测试入门:使用JUnit 5编写第一个测试用例

    面向初学者的JUnit 5实用入门指南。从测试概念、Maven依赖配置,到手把手编写首个单元测试用例及断言验证,助你掌握Java单元测试的核心流程。

    Java变量未初始化报错解析:局部变量与成员变量默认值差异
    Java变量未初始化报错解析:局部变量与成员变量默认值差异

    深入解析Java中局部变量未初始化编译报错与成员变量自动赋予默认值的机制差异,涵盖JVM内存分配、编译期确定性赋值检查与实际排查修复方案。

    Java获取当前时间并格式化输出:DateTimeFormatter与SimpleDateFormat
    Java获取当前时间并格式化输出:DateTimeFormatter与SimpleDateFormat

    详细讲解在Java中获取当前系统时间并进行格式化输出的两种核心方案:基于Java 8全新日期时间API的DateTimeFormatter与传统遗留的SimpleDateFormat,包含完整代码示例、线程安全机制对比及生产选型建议。

    Java中final与static final常量的定义及初始化规则
    Java中final与static final常量的定义及初始化规则

    深入解析Java中final变量与static final常量的定义、内存语义、初始化时机及合法赋值路径,涵盖编译期常量优化与实战避坑指南。

    Java抽象方法与接口方法的区别及选型建议
    Java抽象方法与接口方法的区别及选型建议

    深入对比Java中抽象类抽象方法与接口方法的语法演进、设计意图及运行期差异,并提供清晰的架构选型决策流程与实战范例。

    Java实现HTTP请求与JSON解析的完整代码示例
    Java实现HTTP请求与JSON解析的完整代码示例

    本文提供Java标准库HttpClient发起HTTP GET/POST请求并结合Jackson进行JSON数据反序列化与序列化的完整代码示例与工程实践指南。

    Java递归出现StackOverflowError的原因分析及栈空间优化方案
    Java递归出现StackOverflowError的原因分析及栈空间优化方案

    详细分析Java递归调用出现StackOverflowError的原因,结合代码说明线程栈、栈帧和递归深度之间的关系,并介绍终止条件排查、迭代改写、减少栈帧开销以及通过-Xss调整JVM栈空间的方法。

    Java空指针异常(NPE)的代码排查与修复实例
    Java空指针异常(NPE)的代码排查与修复实例

    针对Java中常见的NullPointerException(NPE),本文从堆栈日志定位、典型代码触发场景、具体修复代码对比到防御体系进行系统讲解,提供实用且易上手的排查与修复方案。

    selenium上传文件教程本地文件路径设置方法
    selenium上传文件教程本地文件路径设置方法

    深入解析Selenium处理文件上传的技术细节,涵盖标准HTML控件的路径直接注入法与非标准控件的系统级模拟方案,提供Windows与Linux环境下的路径设置最佳实践及常见异常排查。

    大数据开发语言选型:Java对比Scala与Python的优缺点及适用场景
    大数据开发语言选型:Java对比Scala与Python的优缺点及适用场景

    针对大数据工程场景,系统对比Java、Scala与Python在执行性能、生态结合、开发效率和维护成本上的核心差异,给出清晰的架构选型依据与落地方案。

    查看更多
    精品专题 更多
    装机必备
    装机必备

    正软商城装机必备专区,精选办公、浏览器、安全防护、影音播放、压缩解压、设计创作和系统工具等电脑常用正版软件,帮助用户快速完成新电脑软件配置。

    Windows
    Windows

    正软商城Windows软件专区,汇集适用于Windows电脑的办公、设计、安全防护、影音播放、开发工具和系统优化软件,提供软件介绍、系统要求、正版授权及购买下载服务。

    PDF教程
    PDF教程

    正软商城PDF教程频道提供PDF编辑、转换、合并、拆分、压缩及格式处理方法,同时介绍常用PDF软件和工具的使用技巧。

    Mac软件 更多
    讯飞智作 网页版
    讯飞智作 网页版
    Windows/ macOS/ Linux

    讯飞智作是一款基于语音合成技术、虚拟人驱动技术与数字人形象声音构建能力的 AI 数字人音视频创作平台。

    火山引擎 网页版
    火山引擎 网页版
    Windows/ macOS/ Linux

    火山引擎是字节跳动旗下企业级云与AI服务平台。聚焦大模型核心能力,依托字节自研豆包多模态大模型,凭借火山方舟一站式平台,提供模型精调、推理部署、智能应用搭建等全链路服务,结合高性能AI算力,助力各行业快速落地大模型数字化与智能化应用。

    Aperty macOS版
    Aperty macOS版
    macOS

    Aperty 是 Skylum 推出的 AI 人像修图软件,支持自然肤质修饰、瑕疵处理、面部与身体调整、预设及批量同步。

    WINDOWS 更多
    讯飞智作 网页版
    讯飞智作 网页版
    Windows/ macOS/ Linux

    讯飞智作是一款基于语音合成技术、虚拟人驱动技术与数字人形象声音构建能力的 AI 数字人音视频创作平台。

    火山引擎 网页版
    火山引擎 网页版
    Windows/ macOS/ Linux

    火山引擎是字节跳动旗下企业级云与AI服务平台。聚焦大模型核心能力,依托字节自研豆包多模态大模型,凭借火山方舟一站式平台,提供模型精调、推理部署、智能应用搭建等全链路服务,结合高性能AI算力,助力各行业快速落地大模型数字化与智能化应用。

    PixTV 网页版
    PixTV 网页版
    Windows

    PixTV 是一款在浏览器中使用的 AI 视觉内容创作平台,提供图片、视频、音频、文字生成、AI 分镜、局部重绘、提示词反推和无限画布等工具,适合短剧、漫剧、广告及社交媒体内容制作。