走进Java的世界
- 初始Java
-
- Java体系
- Java的特征和优势
- Java核心机制
-
- 垃圾收集机制
- 跨平台机制
- Java环境的准备
-
- 下载JDK
- 配置环境变量
- 第一段Java程序(HelloWorld)
- Java API
- JDK、JRE、JVM的区别(重点)
初始Java Java体系 Java SE (Java Standard Edition) : 标准版,定位在个人计算机上的应用
这个版本是Java平台的核心,他提供了非常丰富的API来开发一般个人计算机上的应用程序,包括用户界面接口
AWT
及Swing
,网络功能与国际化,图像处理能力以及输入输出支持等。在上个世纪90年代末互联网上大放异彩。Applet后来为Flash取代,Flash即将被HTML5取代。JavaEE (Java Enterprise Edition) : 企业版,定位在服务器端的应用
JavaEE是JavaSE的扩展,增加了用于对于服务器开发的类库,如:
JDBC
是让程序员能在Java内使用的SQL
的语法来访问数据库内的数据;Servlet能够延申服务器的功能,通过请求-响应的模式来处理客户端的请求;JSP
是一种可以将Java程序代码内嵌在网页的技术。JavaME (Java Micro Edition) : 微型版,定位在消费性电子产品的应用上
JavaME是JavaSE的内伸,包括J2SE的一部分核心类,也有自己的扩展类,增加了适合微小装置的类库:
javax.microedition.io.*
等。该版本针对资源有限的电子消费产品的需求精简核心类库,并提供了模块化的架构让不同类型产品能够随时增加支持的能力。文章图片
Java的特征和优势
- 跨平台/可移植性
- 安全性
- 面向对象
- 简单性
- 高性能
- 分布式
- 多线程
- 健壮性
- 不再使用的内存空间应回收–>垃圾收集;
- Java消除了程序员回收无用内存空间的职责;提供一种系统级线程跟踪存储空间的分配情况。在JVM的空闲时,检查并释放可被释放的存储器空间;相比c++,开发人员负责要自己收回无用内存。
- 垃圾收集在Java程序运行过程中自动进行,程序员无法精确控制和干预;
- GC的自动回收,提高了内存空间的利用效率,也提高了编程人员的效率,很大程度上减少了因为没有释放空间而导致的内存泄露。
(与C语言的跨平台区别在于:C语言是多次编译多次运行,而这里所指的是指编译后的文件跨平台)
【Java基础|初始Java(一篇带你走进Java的世界)】Java跨平台原理:
- 编译:通过编译器将.java文件(源文件)编译成.class字节码文件(二进制文件),编译器即javac.exe,实际上也是运行其背后的代码。
- 解释(执行):通过解释器将.class文件转换为对应的操作系统可以识别的执行文件格式。
文章图片
Java环境的准备 下载JDK
- 下载JDK
官网:www.oracle.com/technetwork/java/javase/downloads/index.html - 安装JDK
安装步骤这里就不详细演示,可以自行搜索安装步骤
- 找到JDK安装路径
文章图片
- 进入到jdk\bin目录下,复制该路径
文章图片
- 将复制的路径添加到系统环境变量中
文章图片
- 验证
win+R 输入cmd 打开命名提示行,输入Java -version查看 :
文章图片
- 1.在E://新建一个HelloWorld.java文件
文章图片
- 2.用记事本打开,编写程序代码并保存
注意,文件名要和class后面的类名要保持一致
public class HelloWorld{
public static void main(String[] args){
System.out.println("Hello world");
}
}
- 3.win+r打开命令提示符,输入cmd
文章图片
- 4.进入文件所在的位置(这里我的
HelloWorld.java
在E盘的根目录下)
文章图片
- 5.输入命令javac HelloWorld.java,成功编译,这时就会生成
.class
文件。
文章图片
- 6.进行解释翻译执行–>执行成功
文章图片
这样,我们Hello World
就出来了,第一段java程序就完成了!!!
- JDK帮助文档
- SUN公司为JDK工具包提供了一整套文档资料,我们习惯上称之为JDK文档。
- JDK文档中提供了Java中的各种技术的详细资料,以及JDK中提供的各种类的帮助说明。
- JDk文档是Java语言的完整说明,大多数书籍中的类的介绍都要参照它来完成,它是编程者经常查阅的资料
- 如何理解API:就当做是一个“字典”,“使用手册”,API就相当于是一个电子的帮助文档,可以帮我们查看JDK提供的类的信息,平时查看的时候可结合百度一起看。
文章图片
JDK、JRE、JVM的区别(重点) JDK、JRE、JVM的关系
文章图片
- JDK(Java Development Kit)–> ava开发工具包
- JRE(Java Runtime Enviroment)–> Java的运行环境
光有JVM还不能成class的执行,因为在解释class的时候JVM需要调用解释所需要的类库lib。在JDK的安装目录里你可以找到jre目录,里面有两个文件夹bin和lib,在这里可以认为bin里的就是jvm,lib中则是jvm工作所需要的类库,而jvm和 lib和起来就称为jre。
如果想要运行一个开发好的Java程序,计算机中只需要安装JRE即可。
- JVM(Java Virtual Machine)–> Java虚拟机
当使用Java编译器编译Java程序时,生成的是与平台无关的字节码文件,这些字节码只面向JVM。不同平台的JVM都是不同的,当他们都提供了相同的接口。
JVM是Java程序跨平台的关键部分,只要为不同平台实现了相应的虚拟机,编译后的Java字节码就可以在该虚拟机下运行。
JVM
:将字节码文件转成具体系统平台的机器指令。JRE
:JVM+Java语言的核心类库(lib)。JDK
:JRE+Java的开发工具。我们开发的实际情况是:我们利用JDK(调用JAVA API)开发了属于我们自己的JAVA程序后,通过JDK中的编译程序(javac)将我们的文本java文件编译成JAVA字节码,在JRE上运行这些JAVA字节码,JVM解析这些字节码,映射到CPU指令集或OS的系统调用。
推荐阅读
- Java基础|浅学一下I/O流和File类文件操作
- SSM框架集|MyBatis核心配置文件概述
- Log4j和SLF4J的区别
- Log4j Maven配置
- Log4j日志Appenders解释
- Log4j-PatternLayout日志
- Log4j属性详细解释
- Log4J日志文件
- 2022全新版!Java分布式架构设计与开发实战一起fen享