《JAVA从入门到精通视频》笔记一:Java概述(特性、加载与执行、跨平台、JDK安装、编译与运行)

《JAVA从入门到精通视频》笔记一:Java概述

一、Java包括三大块
JavaSE(Java标准版)
JavaEE(Java企业版):J2EE
JavaME(Java微型版)
其中JavaSE是基础,以后主攻方向是JavaEE方向。

二、Java语言特性【开源、免费、纯面向对象、跨平台】
* 简单性:如java中不再支持多继承,C++是支持多继承的,多继承比较复杂;C++中有指针,Java中屏蔽了指针的概念。
* 面向对象:Java是纯面向对象的。更符合人的思维模式,更容易理解。
* 多线程
* 健壮性:和自动垃圾回收机制有关,自动垃圾回收机制简称GC机制。Java语言运行过程中产生的垃圾是自动回收的,不需要程序员关心。
* 安全性
* 可移植性:Java程序可以做到一次编译,到处运行。也就是说,Java程序可以在Windows操作系统上运行,不做任何修改,同样的java程序可以直接放到Linux操作系统上运行,这个被称为Java程序的可移植性,或者叫做跨平台。

Windows操作系统内核和Linux操作系统的内核肯定不同,这两个操作系统执行指令的方式也是不一样的。显然Java程序不能直接和操作系统打交道。因为Java程序只有一份,操作系统执行原理都不同。
解决:Sun公司让Java程序运行在一台虚拟的计算机中,这个虚拟的计算机叫做Java虚拟机(JVM)。Java程序通过Java虚拟机和底层的操作系统打交道,实际上也就是JVM屏蔽了两个不同操作系统中的差异。当然,不同操作系统中的JVM是不同的。JVM是包含在JDK中的。

三、Java的加载与执行
* Java程序的运行包括两个非常重要的阶段:编译阶段、运行阶段

* 编译阶段
       - 编译阶段主要的任务是检查Java源程序(XXX.java)是否符合Java语法,符合Java语法则能够生成正常的字节码文件(XXX.class),不符合Java语法规则则无法生成字节码文件。
       - 字节码文件中不是纯粹的二进制,这种文件无法在操作系统当中直接执行。
       - 编译阶段的过程:编写Java源程序(.java文件),使用JDK中自带的javac.exe命令进行Java程序的编译。
       - javac的使用规则:在DOS命令窗口输入“javac java源文件的路径”。一个java源文件可以编译生成多个.class文件。
       - 编译结束之后,可以将class文件拷贝到其他操作系统当中运行。【跨平台】

* 运行阶段
       - JDK安装之后,除了自带一个javac.exe之外,还有另一个工具/命令,叫做java.exe,其主要负责运行阶段。
       - java.exe的使用:在DOS窗口中输入“java 类名”。如硬盘上有一个A.class,那么就输入“java A”。
       - 运行阶段的过程:打开DOS窗口,例如输入“java A”,java.exe命令会启动Java虚拟机(JVM),JVM会启动类加载器ClassLoader,ClassLoader会去硬盘上搜索A.class文件,找到该文件则将该字节码文件装载到JVM当中,JVM将A.class字节码文件解释称二进制。然后操作系统执行二进制和底层硬件平台进行交互。

四、Java语言跨平台原理
1.平台
指的是操作系统,如Windows、Mac、Linux
2.跨平台
Java程序可以在任意的操作系统上运行
3.跨平台原理
在这里插入图片描述
这个翻译在Java中叫JVM(Java虚拟机),也就是说,我们只需要针对不同的操作系统,提供对应的JVM就可以了。比如说,针对Windows提供Windows版JVM,针对Mac提供Mac版JVM,针对Linux提供Linux版JVM。

总结:在需要运行Java应用程序的操作系统上,安装一个与操作系统对应的Java虚拟机即可。

五、JRE和JDK
1.JRE(Java Runtime Environment)
JRE是Java程序的运行时环境,包含JVM和运行时所需要的核心类库。
我们想要运行一个已有的Java程序,那么只需要安装JRE即可。
2.JDK(Java Development Kit)
JDK是Java程序的开发工具包,包含JRE和开发人员使用的工具。
其中的开发工具:编译工具(javac.exe)和运行工具(java.exe)。
我们想要开发一个全新的Java程序,那么必须安装JDK。
3.JDK、JRE和JVM的关系
JDK、JRE和JVM的关系
六、JDK的安装
通过官方网站获取JDK http://www.oracle.com (注意:针对不同的操作系统,下载对应的JDK)。
建议:安装路径中不要包含中文和空格,所有的开发工具最好安装目录统一。
JDK的安装目录
七、Java程序的编译与运行
在这里插入图片描述
1.编译

  • 一个java源文件可以编译生成多个.class(字节码文件)文件
  • .class文件(字节码文件)是最终要执行的文件,所以说.class文件生成之后,java源文件删除并不会影响java程序的执行。但是一般java源程序不要删除,因为.class文件最终执行效果可能不是我们想要的,那么这个时候需要回头再重新修改java源程序,然后将java源程序重新编译生成新的.class文件,生成新的效果。
  • 编译结束之后,可以将.class文件拷贝到其他操作系统当中运行。【跨平台原理】

2.运行阶段过程:

  • 打开DOS命令窗口
  • 输入:java A
  • java.exe命令会启动Java虚拟机(JVM),JVM会启动类加载器ClassLoader
  • ClassLoader会去硬盘上搜索A.class文件,找到该文件则将该字节码文件装载到JVM当中
  • JVM将A.class字节码文件解释成二进制数据
  • 然后操作系统执行二进制和底层硬件平台进行交互
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值