码出高效:Java开发手册-第2章(2)

简介: 本章开始讲解面向对象思想,并以Java 为载体讲述面向对象思想在具体编程语言中的运用与实践。当前主流的编程语言有50 种左右,主要分为两大阵营:面向对象编程与面向过程编程。面向对象编程(Object-Oriented Programming,OOP)是划时代的编程思想变革,推动了高级语言的快速发展和工业化进程。OOP 的抽象、封装、继承、多态的理念使软件大规模化成为可能,有效地降低了软件开发成本、维护成本和复用成本。面向对象编程思想完全不同于传统的面向过程编程思想,使大型软件的开发就像搭积木一样隔离可控、高效简单,是当今编程领域的一股势不可......

2.2 初识Java

      面向对象编程思想把所有的有形或无形的事物都看作对象,并给对象赋予相应的属性和行为,建立对象之间的联系,使程序员更加立体、形象地解决编程领域的问题。面向对象语言的忠实代表是Java 语言,它是一门富有生命力的语言,在最受欢迎的语言排行榜上,多年位居第一。Java 语言是1995 年由Sun 公司首次发布的。次年Java 开发工具包发布,即Java Development Kit,简称JDK1.0,这是Java 发展的一个重要里程碑,标志着Java 成为一门独立的成熟语言。随后,Sun 公司再接再厉发布了Just-in-time 编译器,简称JIT,不断进步的JIT 技术使Java 的执行速度接近甚至超过其他高级语言。

      JDK 随着时代不断往前发展。在众多版本中,最具划时代影响力的版本是JDK5,项目代号Tiger。Doug Lea 推出的并发包,使Java 如虎添翼,成为工业级语言,在企业服务端得到极为广泛的应用。随着后续版本的陆续推出,Java 的发展与时俱进,推出了diamond 语法、函数式、模块化、var 类型推断等新特性。最新的JDK 版本是JDK11。

      JRE(Java Runtime Environment)即Java 运行环境,包括JVM、核心类库、核心配置工具等。其中JVM(Java Virtual Machine)即Java 虚拟机,它是整个Java 体系的底层支撑平台,把源文件编译成平台无关的字节码文件,屏蔽了Java 源代码与具体平台相关的信息,所以Java 源代码不需要额外修改即可跨平台运行。JVM 不仅支撑着Java 语言,还包括Kotlin、Scala、Python 等其他流行语言。其中Kotlin 是Jetbrains 开发的跨平台语言,其语法简洁、类型安全,可以编译成字节码运行在JVM上,与Java 语言非常方便地进行混合编程。1999 年,Sun 公司发布公开版本的HotSpot,它是当前主流的Java 虚拟机。2006 年,在JavaOne 大会上开源相关核心技术,启动OpenJDK 项目,逐步形成了活跃的OpenJDK 社区。在社区的带动下,Java 生态也随之繁荣,包括AJDK、Spring、Hadoop、Dubbo、JStorm、RocketMQ 等Java 相关解决方案,极大地提升了Java 语言的生产效率。

      Java 语言拥有跨平台、分布式、多线程、健壮性等特点,是当下比较主流的高级编程语言。它的类库非常丰富、功能强大、简单易用,对开发者友好,不仅吸收了C++ 的优点,还摒弃了其难以掌控的多继承、指针等概念。Java 比较好地实现了面向对象理论,允许开发工程师以优雅的思维方式处理复杂的编程场景。

现在我们简要回顾和总结一下从JDK5 到JDK11 的重要类、特性和重大改变。

      JDK5 新特性:foreach 迭代方式、可变参数、枚举、自动拆装箱、泛型、注解等重要特性。

      JDK6 新特性:Desktop 类和SystemTray 类、使用Compiler API、轻量级HTTPServer API、对脚本语言的支持、Common Annotations 等重要特性。

       JDK7 新特性:Switch 支持字符串作为匹配条件、泛型类型自动推断、try-withresources资源关闭技巧、Objects 工具类、ForkJoinPool 等重要类与特性。

       JDK8 新特性:接口的默认方法实现与静态方法、Lambda 表达式、函数式接口、方法与构造函数引用、新的日期与时间API、流式处理等重要特性。

       JDK9 新特性:Jigsaw 模块化项目、简化进程API、轻量级JSON API、钱和货币的API、进程改善和锁机制优化、代码分段缓存等重要特性。

       JDK10 新特性:局部变量的类型推断、改进GC 和内存管理、线程本地握手、备用内存设备上的堆分配等重要特性。

      JDK11 新特性:JDK11 于2018 年9 月与《码出高效:Java 开发手册》同期发布,JDK11 中删除了Java EE 和 CORBA 模块,增加基于嵌套的访问控制,支持动态类文件常量,改进 Aarch64 内联函数,提供实验性质的可扩展的低延迟垃圾收集器ZGC等重要特性。

      JDK12 新特性:Shenandoah 低暂停时间的GC、Switch 表达式功能增强、G1 收集器的优化。




相关文章
|
2月前
|
Java
Java开发实现图片URL地址检验,如何编码?
【10月更文挑战第14天】Java开发实现图片URL地址检验,如何编码?
79 4
|
15天前
|
Java API Maven
如何使用Java开发抖音API接口?
在数字化时代,社交媒体平台如抖音成为生活的重要部分。本文详细介绍了如何用Java开发抖音API接口,从创建开发者账号、申请API权限、准备开发环境,到编写代码、测试运行及注意事项,全面覆盖了整个开发流程。
58 10
|
2月前
|
监控 Java 测试技术
Java开发现在比较缺少什么工具?
【10月更文挑战第15天】Java开发现在比较缺少什么工具?
36 1
|
2月前
|
Java
Java开发实现图片地址检验,如果无法找到资源则使用默认图片,如何编码?
【10月更文挑战第14天】Java开发实现图片地址检验,如果无法找到资源则使用默认图片,如何编码?
62 2
|
22天前
|
SQL 安全 Java
安全问题已经成为软件开发中不可忽视的重要议题。对于使用Java语言开发的应用程序来说,安全性更是至关重要
在当今网络环境下,Java应用的安全性至关重要。本文深入探讨了Java安全编程的最佳实践,包括代码审查、输入验证、输出编码、访问控制和加密技术等,帮助开发者构建安全可靠的应用。通过掌握相关技术和工具,开发者可以有效防范安全威胁,确保应用的安全性。
44 4
|
23天前
|
缓存 监控 Java
如何运用JAVA开发API接口?
本文详细介绍了如何使用Java开发API接口,涵盖创建、实现、测试和部署接口的关键步骤。同时,讨论了接口的安全性设计和设计原则,帮助开发者构建高效、安全、易于维护的API接口。
57 4
|
1月前
|
开发框架 JavaScript 前端开发
HarmonyOS UI开发:掌握ArkUI(包括Java UI和JS UI)进行界面开发
【10月更文挑战第22天】随着科技发展,操作系统呈现多元化趋势。华为推出的HarmonyOS以其全场景、多设备特性备受关注。本文介绍HarmonyOS的UI开发框架ArkUI,探讨Java UI和JS UI两种开发方式。Java UI适合复杂界面开发,性能较高;JS UI适合快速开发简单界面,跨平台性好。掌握ArkUI可高效打造符合用户需求的界面。
91 8
|
29天前
|
SQL Java 程序员
倍增 Java 程序员的开发效率
应用计算困境:Java 作为主流开发语言,在数据处理方面存在复杂度高的问题,而 SQL 虽然简洁但受限于数据库架构。SPL(Structured Process Language)是一种纯 Java 开发的数据处理语言,结合了 Java 的架构灵活性和 SQL 的简洁性。SPL 提供简洁的语法、完善的计算能力、高效的 IDE、大数据支持、与 Java 应用无缝集成以及开放性和热切换特性,能够大幅提升开发效率和性能。
|
29天前
|
存储 Java 关系型数据库
在Java开发中,数据库连接是应用与数据交互的关键环节。本文通过案例分析,深入探讨Java连接池的原理与最佳实践
在Java开发中,数据库连接是应用与数据交互的关键环节。本文通过案例分析,深入探讨Java连接池的原理与最佳实践,包括连接创建、分配、复用和释放等操作,并通过电商应用实例展示了如何选择合适的连接池库(如HikariCP)和配置参数,实现高效、稳定的数据库连接管理。
52 2
|
29天前
|
监控 Java 数据库连接
在Java开发中,数据库连接管理是关键问题之一
在Java开发中,数据库连接管理是关键问题之一。本文介绍了连接池技术如何通过预创建和管理数据库连接,提高数据库操作的性能和稳定性,减少资源消耗,并简化连接管理。通过示例代码展示了HikariCP连接池的实际应用。
20 1