《Java和Android开发实战详解》——1.2节Java基础知识

简介:

本节书摘来自异步社区《Java和Android开发实战详解》一书中的第1章,第1.2节Java基础知识,作者 陈会安,更多章节内容可以访问云栖社区“异步社区”公众号查看

1.2 Java基础知识
Java和Android开发实战详解
Java语言类似于C++是一种编译型语言,不过两者并不完全相同,严格说来,Java是结合编译和解释优点的一种编程语言。

1.2.1 Java平台
“平台”(Platform)是一种结合硬件和软件的执行环境。Java既是一种高级的面向对象的编程语言,也是一个平台。Java平台是一种纯软件平台,它可以在各种基于硬件的平台上运行,与硬件无关,主要是由JVM和Java API两个部分组成。

1.JVM虚拟机
JVM(Java Virtual Machine,Java虚拟机)是由软件虚拟出来的一台计算机,Java源代码并不是使用Java编译程序(Java Compiler)编译成其安装实体计算机可执行的机器语言,而是JVM虚拟机的机器语言,称为“字节码”(Bytecode)。

字节码是一种可以在JVM解释或编译执行的程序,换句话说,计算机操作系统需要安装JVM,才能够使用Java解释程序(Java Interpreter)来解释和执行字节码,如图1-3所示。


4d4cdafeb16ac410391801b1b2f87fe845cfe8ba

图1-3中的Java源代码(扩展名为.java)在编译成字节码(扩展名为.class)后,即可在Windows、UNIX,或Machintosh的Mac OS操作系统上执行,只需安装JVM,同一个字节码文件就可以跨平台运行在不同操作系统上,使用Java解释程序来正确执行Java应用程序。

2.Java API
Java API(Java Application Programming Interface)是软件组件的一个集合,也就是C/C++语言所谓的函数库,它提供集合对象、GUI组件、文件处理、数据库访问和网络等相关的类和接口,称为“包”(Package)。

1.2.2 Java语言的版本
Java是一种高级和面向对象编程语言,其语法和C/C++语言十分相似,支持Windows、Solaris、Linux和Mac OS X操作系统,分成企业版(EnterPrise Edition,EE)和标准版(Standard Edition,SE)。

1.标准版的版本演进
本书介绍应用程序开发使用的是Java SE标准版,其版本演进如表1-3所示。


eb8f411008f8ec783bad217800089b42fc006e9c

其中1.0、1.1、5.0和6简称JDK,1.2、1.3和1.4版简称SDK。在1.2版时,因为与前版有极大改进,增加全新Swing图形用户接口,所以称为Java 2平台。

从1.3版后,Sun将平台与平台开发工具的名称分开,平台分为标准版(Standard Edition,SE)和企业版(Enterprise Edition,EE)。企业版新增额外函数库,主要用来开发企业级的服务器端Java应用程序。

到了5.0版,Java版本号也分为两种:产品版本号是5.0版(Product Version),JDK使用1.5.0版,为开发版本号(Developer Version)。从SE 6版开始,官方名称由J2SE改为Java SE,不再称为Java 2,Java SE 7是平台名称,同时使用开发版本号1.7.0和产品版本号7代表新版的Java平台。

2.Java SE 7
Java SE 7是Jave语言的最新版本,也是甲骨文(Oracle)并购Sun公司后,首次发布的Java平台版本。Java SE 7版包含很多全新功能、增强功能与错误修正,可以全方面提升开发与执行Java程序的效率。

Java SE 7除了修正不少漏洞及提升整体性能外,更提供对Ruby、Python和JavaScript语言的支持,并且针对多内核环境新增全新API,并大幅提升JVM性能,使用全新文件系统API,支持异步I/O。其主要增强功能简要说明如下。

改善整体性能、稳定性及安全性。
增强Java插件的功能,方便Intenet应用程序的开发与部署。
强化Java语法,让开发人员更轻松地编写与优化Java程序代码。
增强Java虚拟机的功能,使其可以支持非Java语言。

1.2.3 Java编程语言的特点
Java语言是一款简单、功能强大和高性能的面向对象编程语言,不只这样,Java语言还拥有一些传统编程语言所没有的特点。

1.分布式
Java语言最初的规划是一种网络编程语言,可以支持各种网络协议,能够建立分布式(Distributed)主从架构的应用程序,轻松访问网络上其他主机的资源。

2.多线程
Java语言支持多线程(Multi-Threading),在同一程序能够创建多个执行小程序,称为“轻量级进程”(Light Weight Process),以便执行不同的工作,并且支持同步功能,能够避免“死锁”(Deadlock)情况的发生。

3.垃圾回收
垃圾(Garbage Collection)是指处理程序不再使用的内存空间。在C/C++语言中需要程序员自行处理内存的配置与释放,当不再使用时,程序需要提供程序代码来释放内将其存归还给操作系统,这样操作系统才能够再次分配内存给其他应用程序。

Java语言则拥有自动垃圾回收能力,程序设计者不用担心内存配置不足的问题,因为在执行Java程序时,会自动将不再使用的内存归还给操作系统。

4.异常处理
计算机程序不可能没有“小臭虫”(Bugs)。在程序运行时极有可能产生一些小错误,有些可能只会产生错误结果,但是有一些小错误可能导致严重的系统当机问题,传统编程语言并没有完善的异常处理(Exception Handling)机制,所以常常会出现一些不明的系统错误。

异常处理的目的是为了让程序能够更加“强壮”(Robust),就算程序遇到不寻常情况,也不会造成程序“崩溃”(Crashing),甚或导致整个系统的当机。

相关文章
|
6月前
|
Java 开发者
重学Java基础篇—Java类加载顺序深度解析
本文全面解析Java类的生命周期与加载顺序,涵盖从加载到卸载的七个阶段,并深入探讨初始化阶段的执行规则。通过单类、继承体系的实例分析,明确静态与实例初始化的顺序。同时,列举六种触发初始化的场景及特殊场景处理(如接口初始化)。提供类加载完整流程图与记忆口诀,助于理解复杂初始化逻辑。此外,针对空指针异常等问题提出排查方案,并给出最佳实践建议,帮助开发者优化程序设计、定位BUG及理解框架机制。最后扩展讲解类加载器层次与双亲委派机制,为深入研究奠定基础。
219 0
|
2月前
|
存储 Java 程序员
Java 基础知识点全面梳理包含核心要点及难点解析 Java 基础知识点
本文档系统梳理了Java基础知识点,涵盖核心特性、语法基础、面向对象编程、数组字符串、集合框架、异常处理及应用实例,帮助初学者全面掌握Java入门知识,提升编程实践能力。附示例代码下载链接。
108 0
|
4月前
|
IDE Java 开发工具
【Java基础-环境搭建-创建项目】IntelliJ IDEA创建Java项目的详细步骤
IntelliJ IDEA创建Java项目的图文详细步骤,手把手带你创建Java项目
592 10
【Java基础-环境搭建-创建项目】IntelliJ IDEA创建Java项目的详细步骤
|
3月前
|
存储 安全 Java
2025 年最新 40 个 Java 基础核心知识点全面梳理一文掌握 Java 基础关键概念
本文系统梳理了Java编程的40个核心知识点,涵盖基础语法、面向对象、集合框架、异常处理、多线程、IO流、反射机制等关键领域。重点包括:JVM运行原理、基本数据类型、封装/继承/多态三大特性、集合类对比(ArrayList vs LinkedList、HashMap vs TreeMap)、异常分类及处理方式、线程创建与同步机制、IO流体系结构以及反射的应用场景。这些基础知识是Java开发的根基,掌握后能为后续框架学习和项目开发奠定坚实基础。文中还提供了代码资源获取方式,方便读者进一步实践学习。
679 2
|
3月前
|
存储 安全 Java
Java 基础知识面试题汇总 最全面的 Java 基础面试题整理
本文全面解析Java基础知识面试题,涵盖Java基础概念、面向对象编程、异常处理、集合框架等核心内容。通过实际应用场景,提供技术方案与应用实例,如JDK与JRE区别、==与equals()差异、String类特性、final与static关键字用法、多继承替代方案及接口与抽象类对比。帮助开发者夯实基础,高效备考,提升实战能力。附带完整代码示例,可供下载学习。
476 3
|
12月前
|
Java Linux
java基础(3)安装好JDK后使用javac.exe编译java文件、java.exe运行编译好的类
本文介绍了如何在安装JDK后使用`javac.exe`编译Java文件,以及使用`java.exe`运行编译好的类文件。涵盖了JDK的安装、环境变量配置、编写Java程序、使用命令行编译和运行程序的步骤,并提供了解决中文乱码的方法。
405 2
|
6月前
|
设计模式 缓存 Java
重学Java基础篇—Java对象创建的7种核心方式详解
本文全面解析了Java中对象的创建方式,涵盖基础到高级技术。包括`new关键字`直接实例化、反射机制动态创建、克隆与反序列化复用对象,以及工厂方法和建造者模式等设计模式的应用。同时探讨了Spring IOC容器等框架级创建方式,并对比各类方法的适用场景与优缺点。此外,还深入分析了动态代理、Unsafe类等扩展知识及注意事项。最后总结最佳实践,建议根据业务需求选择合适方式,在灵活性与性能间取得平衡。
320 3
|
6月前
|
安全 IDE Java
重学Java基础篇—Java泛型深度使用指南
本内容系统介绍了Java泛型的核心价值、用法及高级技巧。首先阐述了泛型在**类型安全**与**代码复用**中的平衡作用,解决强制类型转换错误等问题。接着详细讲解了泛型类定义、方法实现、类型参数约束(如边界限定和多重边界)、通配符应用(PECS原则)以及类型擦除的应对策略。此外,还展示了泛型在通用DAO接口、事件总线等实际场景的应用,并总结了命名规范、边界控制等最佳实践。最后探讨了扩展知识,如通过反射获取泛型参数类型。合理运用泛型可大幅提升代码健壮性和可维护性,建议结合IDE工具和单元测试优化使用。
142 1
|
6月前
|
安全 IDE Java
重学Java基础篇—Java Object类常用方法深度解析
Java中,Object类作为所有类的超类,提供了多个核心方法以支持对象的基本行为。其中,`toString()`用于对象的字符串表示,重写时应包含关键信息;`equals()`与`hashCode()`需成对重写,确保对象等价判断的一致性;`getClass()`用于运行时类型识别;`clone()`实现对象复制,需区分浅拷贝与深拷贝;`wait()/notify()`支持线程协作。此外,`finalize()`已过时,建议使用更安全的资源管理方式。合理运用这些方法,并遵循最佳实践,可提升代码质量与健壮性。
177 1
|
8月前
|
存储 移动开发 算法
【潜意识Java】Java基础教程:从零开始的学习之旅
本文介绍了 Java 编程语言的基础知识,涵盖从简介、程序结构到面向对象编程的核心概念。首先,Java 是一种高级、跨平台的面向对象语言,支持“一次编写,到处运行”。接着,文章详细讲解了 Java 程序的基本结构,包括包声明、导入语句、类声明和 main 方法。随后,深入探讨了基础语法,如数据类型、变量、控制结构、方法和数组。此外,还介绍了面向对象编程的关键概念,例如类与对象、继承和多态。最后,针对常见的编程错误提供了调试技巧,并总结了学习 Java 的重要性和方法。适合初学者逐步掌握 Java 编程。
145 1

热门文章

最新文章