【JAVA-Day01】Java的介绍、特点和历史
💕 💞Java的介绍、特点和历史
- 前言
- 摘要
- Java的起源
- Java的特点
- 1.Java与其他编程语言的比较
- 1. 跨平台性
- 2. 面向对象
- 2.1 从概念角度讲
- 2.2 从应用角度讲
- 2.3 面向过程和面向对象小结
- 3. 内存管理
- 4. 丰富的标准库
- 5. 安全性
- 2. 编译型与解释型
- 2.1 编译型
- 2.2 解释型
- 3. Java 和 C++ 的区别
- 3.1 执行性能
- 3.2 内存安全
- 3.3 指针功能
- 3.4 执行方式
- 3.5 Java 和 C++ 哪个更好
- 4. 编程语言的发展历史
- 4.1 机器语言
- 4.2 汇编语言
- 4.3 高级语言
- 5. Oracle JDK 和 OpenJDK 的区别
- 6. Java的发展历程
- 7. JDK、JRE 和 JVM
- 结语

博主 默语带您 Go to New World.
✍ 个人主页—— 默语 的博客👦🏻
《java 面试题大全》
🍩惟余辈才疏学浅,临摹之作或有不妥之处,还请读者海涵指正。☕🍭
《MYSQL从入门到精通》数据库是开发者必会基础之一~
🪁 吾期望此文有资助于尔,即使粗浅难及深广,亦备添少许微薄之助。苟未尽善尽美,敬请批评指正,以资改进。!💻⌨

前言
在当今数字化时代,编程已经成为了一项至关重要的技能。与此同时,编程语言的选择也变得越来越重要,因为它直接影响到我们开发应用程序的方式和效果。在众多编程语言中,Java一直是备受欢迎的选择,不仅因为它的广泛应用,还因为它的跨平台性和强大的功能。
本博客将带您深入了解Java编程语言,从基础概念到高级技术,我们将探讨Java的多个方面,包括面向对象编程、编译型与解释型、与C++的区别、编程语言的发展历史、Oracle JDK和OpenJDK的区别,以及Java的历史。
摘要
Java编程语言一直以其多才多艺而强大的特性而闻名。本文旨在为读者提供对Java的深入了解,包括其核心概念和关键特性。我们将介绍Java的面向对象编程模式,探讨编译型与解释型编程语言的区别,比较Java与C++之间的异同,回顾编程语言的演进历史,以及解释Oracle JDK和OpenJDK之间的差异。此外,我们还将回顾Java的发展历史,从其最初的诞生到如今的广泛应用。
无论您是初学者还是经验丰富的开发者,本文都将为您提供有关Java的深入知识,帮助您更好地掌握这门强大的编程语言。如果您渴望在编程领域取得成功,那么Java绝对值得深入学习和探索。
Java,作为一门广泛使用的编程语言,拥有令人瞩目的历史和影响。从其诞生到今天,Java一直在不断发展和演变,为开发人员提供了无限的可能性。本文将带你深入了解Java的背后故事,从Java的起源、特点,到与其他编程语言的比较,再到Java的发展历程和重要版本的介绍,让你对这门语言有一个更全面的了解。
簡言之,Java 乃一門編程語言,用以開發諸多應用程式,為後端程式員之開發利器。
就比如这样:
public class Main {public static void main(String[] args) {System.out.println("Hello World!");}
}
Java的起源
Java诞生于1995年,最初由Sun Microsystems的詹姆斯·高斯林(James Gosling)等人开发。起初,Java的名字是Oak,但后来改为Java,以迎合当时互联网热潮的需求。Java的设计目标之一是能够编写跨平台的应用程序,这意味着开发人员可以编写一次代码,然后在不同的计算机和操作系统上运行,这一目标成为Java最引人注目的特点之一。
Java的特点
Java具有许多令人印象深刻的特点,这些特点使其成为一门受欢迎的编程语言:
- 跨平台性:Java的"一次编写,到处运行"特性使得开发人员可以编写一次代码,然后在各种不同的平台上运行,只需确保目标平台上有对应的Java虚拟机(JVM)即可。
- 面向对象:Java是一门面向对象的编程语言,它支持面向对象的编程范式,包括封装、继承和多态,这使得代码更容易理解、扩展和维护。
- 内存管理:Java自动处理内存管理,开发人员不需要手动分配和释放内存,这有助于减少内存泄漏和错误。
- 丰富的标准库:Java拥有丰富的标准库,提供了大量的类和方法,用于处理各种任务,从文件操作到网络通信,从图形界面到数据库连接,应有尽有。
- 安全性:Java具有内置的安全性特性,如沙箱机制,用于防止恶意代码执行,这使得Java成为Web应用程序的首选语言之一。

1.Java与其他编程语言的比较
Java与其他编程语言(例如C++)之间存在许多区别和相似之处。以下是一些关于Java与C++的比较:
1. 跨平台性
Java的跨平台性基于字节码和Java虚拟机(JVM)的概念。这意味着您可以在不同的操作系统上运行相同的Java程序,只需确保目标平台上有对应版本的JVM。这为开发人员提供了极大的便利,因为他们可以编写一次代码,然后在Windows、Linux、macOS等各种平台上运行,而不必为每个平台单独编写不同的代码。这降低了开发和维护多平台应用程序的复杂性。
2. 面向对象
Java的面向对象编程范式是其核心特征之一。这意味着代码被组织成对象,每个对象包含数据和相关的操作。面向对象编程的优势在于它提供了更好的代码组织结构,使代码更易于理解和维护。以下是面向对象编程的重要概念:
- 封装:允许隐藏对象的内部细节,使得对象的状态不会被外部直接访问或修改,提高了数据的安全性和模块的独立性。
- 继承:允许您创建新类并重用现有类的功能,通过建立类之间的关系,减少了代码的重复性,提高了代码的可维护性。
- 多态:允许不同的对象对相同的操作具有不同的行为,增加了代码的灵活性和可扩展性。
这些概念使Java代码更加模块化、可重用和易于扩展。
2.1 从概念角度讲
- 面向过程(POP,Procedure-Oriented Programming):这种编程思想以过程为中心,强调事件的流程和顺序。在面向过程编程中,问题被分解为一系列步骤或过程,每个步骤按照顺序执行。例如,使用类似于C语言的编程语言,通常采用面向过程编程方式。
- 面向对象(OOP,Object-Oriented Programming):这种编程思想以对象为中心,强调事件的角色和主体。在面向对象编程中,问题被看作是一组相互作用的对象,每个对象具有属性和方法。例如,Java和C#等编程语言采用面向对象编程方式。
2.2 从应用角度讲
考虑一个普通的日常情景:张三下班后乘坐公交车回家,然后打开电脑,运行英雄联盟开始打游戏。
面向过程角度:
- 回家
- 开电脑
- 打游戏
面向对象角度:
- 对象:张三、公交车、电脑、游戏
- 电脑可以做什么:开机、运行游戏
- 张三可以做什么:乘坐公交车、打开电脑
- …
2.3 面向过程和面向对象小结
- 从不同的角度看待同一个事件或问题,会导致不同的分析和处理方法。
- 面向过程编程的优点是逻辑相对简单,按照步骤逐个执行,对于简单的事件处理效率较高。
- 面向过程编程的缺点是只关注眼前的事件执行,对于复杂事件的处理效率可能较低。
- 面向对象编程首先定义事件所涉及的全部角色对象,列出对象的属性和功能,每次使用只需实例化对象即可,这样的内部实现仍然可以采用面向过程的方式。
- 面向对象编程的优点包括扩展性高、保密性好、可复用性、关注未来可能需要实现的业务,支持继承、封装和多态等特性。
- 面向对象编程的缺点是对于较为简单的业务,可能处理起来相对繁琐,不利于初学者入门。
总之,面向过程和面向对象是不同的编程思想,每种方式都有自己的适用场景和优势,开发人员根据具体的需求和项目来选择合适的编程范式。
3. 内存管理
Java的内存管理是自动的,这意味着开发人员不必担心手动分配和释放内存。Java的垃圾回收器会自动识别和回收不再使用的内存,从而减少内存泄漏和内存错误的风险。这降低了程序员的工作负担,并提高了应用程序的稳定性。
4. 丰富的标准库
Java的标准库包含大量的类和方法,涵盖了各种任务和功能。无论您是开发网络应用程序、文件处理、数据库连接、图形界面设计还是其他领域的应用程序,Java都提供了适用于您的工具和库。这使得开发人员可以更快速地构建功能强大的应用程序,而不必从头开始编写所有代码。标准库还具有广泛的文档和社区支持,使得查找和使用库中的功能变得更加容易。
5. 安全性
Java具有内置的安全性特性,其中一个重要特性是沙箱机制。这个机制限制了代码的执行环境,防止恶意代码对系统造成损害。Java应用程序在运行时受到控制,并受到许多安全性检查的保护。这使得Java成为Web应用程序的首选语言之一,因为它可以防止许多常见的安全漏洞和攻击。安全性是Java应用程序在互联网上广泛使用的一个关键原因。
总的来说,Java的这些特性使其成为一种强大的编程语言,适用于广泛的应用领域,从跨平台桌面应用到大型企业级Web应用程序。 Java的设计理念强调了代码的可维护性、可扩展性和安全性,使其成为众多开发人员和组织的首选之一。
总之,Java和C++都是强大的编程语言,适用于不同的应用领域,没有哪个更好,只有哪个更适合特定的任务。
2. 编译型与解释型
编程语言可以根据其执行方式分为编译型和解释型,虽然目前的分类有些模糊,但了解它们的概念和区别仍然是有必要的。
Java是一种半编译、半解释执行的语言,下面我们来详细了解编译型和解释型的概念。
2.1 编译型
编译型语言需要将高级编程语言代码编译成计算机可识别的二进制代码,然后才能执行。Java首先将代码编译成字节码(.class文件),然后由Java虚拟机(JVM)解释执行。这种方式具有高执行效率,但每次修改都需要重新编译。
2.2 解释型
解释型语言边解释边执行,不需要像编译语言一样将代码转换为机器码。这使得解释型语言具有较好的跨平台性,但执行效率较低。Java也可以被视为一种解释型语言,因为它需要JVM在运行时解释字节码。
3. Java 和 C++ 的区别
Java和C++都是强大的编程语言,但它们在执行性能、内存安全、指针功能和执行方式等方面存在差异。
3.1 执行性能
Java的代码需要通过JVM解释执行,因此执行性能一般较低。相比之下,C++被编译为机器语言,因此执行速度更快。
3.2 内存安全
Java是一种内存安全型语言,由JVM负责内存管理。C++需要手动管理内存,虽然灵活,但容易出错,可能导致程序崩溃。
3.3 指针功能
Java不支持指针,但可以使用值引用进行值传递。C++支持指针,允许直接操作内存。
3.4 执行方式
Java项目需要先通过编译器生成字节码(.class文件),然后在JVM环境下解释执行。这使得Java具有较好的跨平台性。C++通过编译器生成特定平台的机器语言,因此不具备跨平台性。
3.5 Java 和 C++ 哪个更好
Java和C++各有优势,没有哪个更好,只有哪个更适合特定的应用场景。Java适用于服务器端开发、Web开发和Android开发,注重跨平台性。C++则更适用于硬件级应用程序和游戏开发,以及对性能有高要求的应用。
4. 编程语言的发展历史
编程语言的发展历史可以分为三个阶段:
4.1 机器语言
机器语言是最底层的计算机语言,由一连串的二进制代码组成,难以学习和编写,依赖于具体的机器硬件,不具备移植性,一般不用于编写程序。
4.2 汇编语言
汇编语言使用容易记忆和辨识的符号来表示机器指令,更接近机器语言,执行效率高,但依然依赖于特定硬件,移植性较差。
4.3 高级语言
高级语言更接近自然语言,具有独立于机器的语法,良好的移植性。高级语言的源代码需要通过编译器转换为机器语言,例如C、Java、Python等。
5. Oracle JDK 和 OpenJDK 的区别
Oracle JDK是官方发布的JDK,稳定性高,性能优越,但并非完全开源,并有一些收费功能。OpenJDK是一个开源的参考模型,不定期更新。建议在学习Java时使用免费的Oracle JDK 17版本,因为它是长期维护的版本,无需授权即可使用。
6. Java的发展历程
Java于1995年推出,最初名为Oak,它是通过对C++进行改进而设计的,去掉了复杂的指针。随着互联网的迅猛发展,Java逐渐成为了重要的网络编程语言。
总之,Java是一门强大而多才多艺的编程语言,具有丰富的历史和生态系统。无论是面向对象编程、编译型与解释型、与C++的区别、编程语言的发展历史还是Oracle JDK和OpenJDK的区别,这些都是每个Java开发者应该了解的重要概念。在学习和应用Java时,深入理解这些概念将有助于更好地利用这门强大的编程语言
Java自诞生以来经历了多个版本和重要的里程碑。以下是Java的发展历程的一些关键点:
- 1995年:Java 1.0发布,标志着Java的正式面世。
- 1998年:Java 2发布,引入了Swing GUI库和Java 2 Platform, Enterprise Edition(J2EE)。
- 2004年:Java 5发布,引入了重要的语言特性,如泛型、枚举、增强的for循环和注解。
- 2011年:Java 7发布,增加了新的语言特性,如try-with-resources和Diamond操作符。
- 2014年:Java 8发布,引入了Java中的Lambda表达式和Stream API,带来了函数式编程的支持。
- 2017年:Java 9发布,引入了模块系统,以改进代码的可维护性和可扩展性。
- 2018年:Java 10发布,包含一些小的语言和库改进。
- 2019年:Java 11发布,作为长期支持(LTS)版本,具有改进的性能和稳定性。
- 2021年:Java 17发布,也是LTS版本,包括许多新功能和改进,如嵌套的Unix套接字、模式匹配、预览性功能等。

7. JDK、JRE 和 JVM
在深入学习Java之前,让我们了解一下与Java密切相关的概念:JDK、JRE和JVM。
- JDK(Java Development Kit):JDK是Java的软件开发工具包,它包括了Java的运行环境(JRE)和Java工具。如果您计划编写Java程序,您需要安装JDK。
- JRE(Java Runtime Environment):JRE是Java运行时环境,它包含了Java应用程序执行所需的一切,包括Java虚拟机(JVM)和Java标准类库。如果您只想运行Java应用程序而不是编写它们,您只需要安装JRE。
- JVM(Java Virtual Machine):JVM是Java虚拟机的缩写,它是Java程序的执行引擎。JVM负责解释并执行Java字节码。它是Java的核心,使得Java具有跨平台性,因为不同操作系统上都有不同的JVM实现。
现在您对Java的关键概念有了更清晰的认识,让我们继续深入学习这门强大的编程语言。
结语
本文深入探讨了Java的面向对象编程特性、编译型与解释型、与C++的区别、编程语言的发展历史、Oracle JDK和OpenJDK的区别以及Java的历史。这些知识点对于理解和应用Java都至关重要。无论您是初学者还是有经验的开发者,都应深入研究这些概念,以充分利用Java的强大功能。希望本文能帮助您更好地了解Java编程语言。如果您有任何问题或需要进一步的帮助,请随时向我们提问。
🪁🍁 希望本文能够给您带来一定的帮助🌸文章粗浅,敬请批评指正!🍁🐥
如对本文内容有任何疑问、建议或意见,请联系作者,作者将尽力回复并改进📓;(联系微信:Solitudemind )
点击下方名片,加入IT技术核心学习团队。一起探索科技的未来,共同成长。

本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
