资讯动态

爆肝一个月,Java 从入门到精通01 - 简介及发展史

发布时间:2026/10/17 6:51:28 来源:尧图企业网站定制
为什么要学Java因为Java是全球排名第一的编程语言Java工程师也是市场需求最大的软件工程师选择Java就是选择了高薪。为什么Java应用最广泛从互联网到企业平台Java是应用最广泛的编程语言原因在于Java是基于JVM虚拟机的跨平台语言一次编写到处运行Java程序易于编写而且有内置垃圾收集不必考虑内存管理Java虚拟机拥有工业级的稳定性和高度优化的性能且经过了长时期的考验Java拥有最广泛的开源社区支持各种高质量组件随时可用。Java语言常年霸占着三大市场互联网和企业应用这是Java EE的长期优势和市场地位大数据平台主要有Hadoop、Spark、Flink等他们都是Java或Scala种运行于JVM的编程语言开发的Android移动平台。这意味着Java拥有最广泛的就业市场。教程特色虽然是零基础Java教程但是覆盖了从基础到高级的Java核心编程学完后完全可以从小白成长为架构师实现硬实力高薪就业还可以边学边练而且可以在线练习并且时刻更新至最新版Java目前教程版本是Java 27!最重要的是免费不要犹豫了现在开始学习Java从入门到架构师Java历史Java最早是由SUN公司已被Oracle收购的詹姆斯·高斯林高司令人称Java之父在上个世纪90年代初开发的一种编程语言最初被命名为Oak目标是针对小型家电设备的嵌入式应用结果市场没啥反响。谁料到互联网的崛起让Oak重新焕发了生机于是SUN公司改造了Oak在1995年以Java的名称正式发布原因是Oak已经被人注册了因此SUN注册了Java这个商标。随着互联网的高速发展Java逐渐成为最重要的网络编程语言。Java介于编译型语言和解释型语言之间。编译型语言如C、C代码是直接编译成机器码执行但是不同的平台x86、ARM等CPU的指令集不同因此需要编译出每一种平台的对应机器码。解释型语言如Python、Ruby没有这个问题可以由解释器直接加载源码然后运行代价是运行效率太低。而Java是将代码编译成一种“字节码”它类似于抽象的CPU指令然后针对不同平台编写虚拟机不同平台的虚拟机负责加载字节码并执行这样就实现了“一次编写到处运行”的效果。当然这是针对Java开发者而言。对于虚拟机需要为每个平台分别开发。为了保证不同平台、不同公司开发的虚拟机都能正确执行Java字节码SUN公司制定了一系列的Java虚拟机规范。从实践的角度看JVM的兼容性做得非常好低版本的Java字节码完全可以正常运行在高版本的JVM上。随着Java的发展SUN给Java又分出了三个不同版本Java SEStandard EditionJava EEEnterprise EditionJava MEMicro Edition这三者之间有啥关系呢┌───────────────────────────┐ │Java EE │ │ ┌────────────────────┐ │ │ │Java SE │ │ │ │ ┌─────────────┐ │ │ │ │ │ Java ME │ │ │ │ │ └─────────────┘ │ │ │ └────────────────────┘ │ └───────────────────────────┘简单来说Java SE就是标准版包含标准的JVM和标准库而Java EE是企业版它只是在Java SE的基础上加上了大量的API和库以便方便开发Web应用、数据库、消息服务等Java EE的应用使用的虚拟机和Java SE完全相同。Java ME就和Java SE不同它是一个针对嵌入式设备的“瘦身版”Java SE的标准库无法在Java ME上使用Java ME的虚拟机也是“瘦身版”。毫无疑问Java SE是整个Java平台的核心而Java EE是进一步学习Web应用所必须的。我们熟悉的Spring等框架都是Java EE开源生态系统的一部分。不幸的是Java ME从来没有真正流行起来反而是Android开发成为了移动平台的标准之一因此没有特殊需求不建议学习Java ME。因此我们推荐的Java学习路线图如下首先要学习Java SE掌握Java语言本身、Java核心开发技术以及Java标准库的使用如果继续学习Java EE那么Spring框架、数据库开发、分布式架构就是需要学习的如果要学习大数据开发那么Hadoop、Spark、Flink这些大数据平台就是需要学习的他们都基于Java或Scala开发如果想要学习移动开发那么就深入Android平台掌握Android App开发。无论怎么选择Java SE的核心技术是基础这个教程的目的就是让你完全精通Java SE并掌握Java EEJava版本从1996年发布1.0版本开始到目前为止最新的Java版本是Java 27名词解释初学者学Java经常听到JDK、JRE这些名词它们到底是啥JDKJava Development KitJREJava Runtime Environment简单地说JRE就是运行Java字节码的虚拟机。但是如果只有Java源码要编译成Java字节码就需要JDK因为JDK除了包含JRE还提供了编译器、调试器等开发工具。二者关系如下┌─ ┌──────────────────────────────────┐ │ │ Compiler, debugger, etc. │ │ └──────────────────────────────────┘ JDK ┌─ ┌──────────────────────────────────┐ │ │ │ │ │ JRE │ JVM Runtime Library │ │ │ │ │ └─ └─ └──────────────────────────────────┘ ┌───────┐┌───────┐┌───────┐┌───────┐ │Windows││ Linux ││ macOS ││others │ └───────┘└───────┘└───────┘└───────┘要学习Java开发当然需要安装JDK了。那JSR、JCP……又是啥JSR规范Java Specification RequestJCP组织Java Community Process为了保证Java语言的规范性SUN公司搞了一个JSR规范凡是想给Java平台加一个功能比如说访问数据库的功能大家要先创建一个JSR规范定义好接口这样各个数据库厂商都按照规范写出Java驱动程序开发者就不用担心自己写的数据库代码在MySQL上能跑却不能跑在PostgreSQL上。所以JSR是一系列的规范从JVM的内存模型到Web程序接口全部都标准化了。而负责审核JSR的组织就是JCP。一个JSR规范发布时为了让大家有个参考还要同时发布一个“参考实现”以及一个“兼容性测试套件”RIReference ImplementationTCKTechnology Compatibility Kit比如有人提议要搞一个基于Java开发的消息服务器这个提议很好啊但是光有提议还不行得贴出真正能跑的代码这就是RI。如果有其他人也想开发这样一个消息服务器如何保证这些消息服务器对开发者来说接口、功能都是相同的所以还得提供TCK。通常来说RI只是一个“能跑”的正确的代码它不追求速度所以如果真正要选择一个Java的消息服务器一般是没人用RI的大家都会选择一个有竞争力的商用或开源产品。喜欢这个系列的同学可以关注我爆肝一个月Python 从入门到精通

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑