Java 版本、语言规范、API、JDK、IDE、Java 源程序编译、执行原理(跨平台性根本原因)、特殊字符用法、8 大数据类型小结

简介: Java 版本、语言规范、API、JDK、IDE、Java 源程序编译、执行原理(跨平台性根本原因)、特殊字符用法、8 大数据类型小结

文章目录


前言

Java 是一个全面且功能强大的软件。Java 语言规范和 Java API 定义 Java 的标准。本文对 Java 中最为常见的几个英文单词如 JDK、JRE、IDE 等作了简单介绍,同时介绍了不同版本类型之间的开发区别和语言规范、数据类型等。希望能对你初学 Java 有一个认知。

image.png


一、三大版本类型

  • Java 标准版(Java Standard Edition,Java SE)可以用来开发客户端的应用程序。应用程序可以独立运作或作为 applet 在 Web 浏览器中运行。Java SE 是基础,其他 Java 技术都基于 Java SE。
  • Java 企业版(Java Enterprise Edition,Java EE)可以用来开发服务器端的应用程序,例如,Java servlet 和 JavaServer Pages(JSP),以及 JavaServer Faces(JSF)。
  • Java 微型版(Java Micro Edition,Java ME)用来开发移动设备的应用程序,例如手机。

二、Java 语言规范

Java 语言规范(Java Language specification)是对语言的技术定义,包括 Java 程序设计语言和语法的定义。

三、应用程序接口(API

应用程序接口(Application Program Interface,API)也称为库,包括为开发 Java 程序而预定义的类和接口。在不断地扩展。

四、Java 开发工具包(JDK)

Java 开发工具包(Java Development Toolkit,JDK)是一套独立程序构成的集合,每个程序都是从命令行调用的,用于开发和测试 Java 程序。

Java SE 8 对应的 Java 开发工具包称为 JDK 1.8(也称为 Java 8 或者 JDK 8)。

JDK 有 32bit 和 34bit 之分:

  • 32 位操作系统只能装 32bit 的 JDK
  • 64 位操作系统可以装 32bit 或 64bit 的 JDK
  • 32 位工作性能好,内存受到 4G 限制
  • 64 位内存很大,但是同等条件下,性能有所损失
  • 32 位和 64 位,编译和执行命令可以混用

五、集成开发环境(IDE)

Java 开发工具(例如,NetBeans、Eclipse、TextPad、微软的 Visual Studio 系列、Borland 的C++Builder、Delphi 系列),为了快速开发 Java 程序而提供——集成开发环境(Intergrated Development Enviroment,IDE)。

编辑、编译、链接、调试和在线帮助都集成在一个图形用户界面,只需在一个窗口中输入源代码或在窗口中打开已有的文件,然后单击按钮,菜单选项或者使用功能按键就可以编译和运行源代码。

该程序可以独立运行,也可以和其他程序并用。

六、Java 运行环境(JRE)

JRE 为 Java Runtime Environment 的简称,Java Runtime Environment(包括 Java Plug-in)是 Sun 的产品,包括两部分:Java Runtime Environment 和 Java Plug-in。

JavaRuntimeEnvironment(JRE)是可以在其上运行、测试和传输应用程序的 Java 平台。

  • 它包括 Java 虚拟机(jvm)、Java 核心类库和支持文件。
  • 它不包含开发工具(JDK)–编译器、调试器和其它工具。
  • JRE 需要辅助软件–Java Plug-in–以便在浏览器中运行 applet。

Java Plug-in 软件允许 Java Applet 和 JavaBean 组件在使用 Sun 的 Java Runtime Environment(JRE)的浏览器中运行,而不是在使用缺省的 Java 运行环境的浏览器中运行。Java Plug-in 可用于 Netscape Navigator 和 Microsoft Internet Explorer。

J2RE 是 Java2 Runtime Environment,即 Java 运行环境,只是强调其匹配 Java2 平台,有时简称 JRE。如果你只需要运行 Java 程序或 Applet,下载并安装它即可。如果你要自行开发 Java 软件,请下载 JDK(JRE 和 JDK 的区别)。在 JDK 中附带有 JRE。

七、Java 源程序编译、执行原理(跨平台性根本原因)

Java 源程序保存为 .java 文件,由 Java 编译器产生 .class 文件(与平台无关的中间字节码文件),然后再把 .class 文件以及库文件交由 Java 虚拟机(JVM)执行。翻译一步,执行一步。

image.png

Java 语言是高级语言,而 Java 字节码是低级语言。字节码类似于机器指令,其体系结构是中立的,是可以在任何带 Java 虚拟机(JVM)的平台上运行的。虚拟机不是物理机器,而是一个解释 Java 字节码的程序,这也就是 Java 语言具有跨平台性特点的根本原因。

Java核心机制:Java 虚拟机、垃圾回收。

在执行一个 Java 程序时,JVM 首先会使用一个叫类加载器(class louder)的程序将类的字节类加载到内存中。当加载该类后,JVM 会使用一个称为字节码验证器(bytecode verifier)的程序来检验字节码的合法性,确保字节码不会违反 Java 的安全规范。

八、Java 中常见的特殊字符用法

  • {}——表示一个包含语句的块
  • ()——和方法一起使用
  • []——表示一个数组
  • //——表示后面一行是注释
  • “”——包含一个字符串(即一系列的字符)
  • ;——表示一个语句的结束

九、Java 的 8 大数据类型

Java 共有 8 种数据类型,主要分为基本类型和引用类型。

这里额外说明一下,我们常见的 String 类型不属于基本类型,而是引用类型(reference type)。

任何 Java 类都可以将变量表示为引用类型。使用引用类型声明的变量称为引用变量,它引用一个变量。

image.png


总结

本文对 Java 的几个初学核心知识点作了小结,同时补充了特别重要的一点:Java 源程序编译和执行的原理,而这也是我们说 Java 语言具有跨平台性根本原因。另外关于具体的编译流程和执行流程我们会放到后面学习 JVM 的时候进行深度剖析。

20201028185323741.gif


我是白鹿,一个不懈奋斗的程序猿。望本文能对你有所裨益,欢迎大家的一键三连!若有其他问题、建议或者补充可以留言在文章下方,感谢大家的支持!



相关实践学习
简单用户画像分析
本场景主要介绍基于海量日志数据进行简单用户画像分析为背景,如何通过使用DataWorks完成数据采集 、加工数据、配置数据质量监控和数据可视化展现等任务。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
3天前
|
存储 Java
【JAVA基础篇教学】第一篇:Java基础数据类型
【JAVA基础篇教学】第一篇:Java基础数据类型
|
19小时前
|
安全 Java API
Java Stream API详解与使用
Java Stream API是Java 8引入的特性,提供函数式操作处理集合,支持链式操作和并行处理,提升代码可读性和性能。关键点包括:延迟执行的中间操作(如filter, map)和触发计算的终端操作(如collect, forEach)。示例展示了如何从Person列表过滤出年龄大于20的姓名并排序。使用Stream时注意避免中间操作的副作用,终端操作后Stream不能复用,以及并行操作的线程安全性。
|
2天前
|
Java 程序员 API
Java 8新特性之Lambda表达式与Stream API的深度解析
【5月更文挑战第12天】本文将深入探讨Java 8中的两个重要新特性:Lambda表达式和Stream API。我们将从基本概念入手,逐步深入到实际应用场景,帮助读者更好地理解和掌握这两个新特性,提高Java编程效率。
17 2
|
3天前
|
小程序 Java 容器
03|Java基础语法:讲解标识符、关键字、变量、数据类型、运算符、控制语句(条件分支、循环)
03|Java基础语法:讲解标识符、关键字、变量、数据类型、运算符、控制语句(条件分支、循环)
8 0
|
3天前
|
Java
深入浅出Java基础语法:标识符、关键字、变量、数据类型、运算符与控制语句
深入浅出Java基础语法:标识符、关键字、变量、数据类型、运算符与控制语句
6 0
|
3天前
|
存储 Java 定位技术
轻松理解Java中的数据类型和变量
轻松理解Java中的数据类型和变量
6 0
|
3天前
|
IDE Java Shell
02|手把手教你安装JDK与配置主流IDE
02|手把手教你安装JDK与配置主流IDE
6 0
|
3天前
|
Java API
【JAVA进阶篇教学】第三篇:JDK8中Stream API使用
【JAVA进阶篇教学】第三篇:JDK8中Stream API使用
|
4天前
|
Java
JDK环境下利用记事本对java文件进行运行编译
JDK环境下利用记事本对java文件进行运行编译
13 0
|
4天前
|
网络协议 Dubbo Java
【网络编程】理解客户端和服务器并使用Java提供的api实现回显服务器
【网络编程】理解客户端和服务器并使用Java提供的api实现回显服务器
9 0