00:00
好了,那咱们继续吧,啊,咱们继续再往下,那么这一块也有一个图啊,也有一个图,好大家看这个图能不能看明白。比如说呢,这个是呃不同,这两个是不同,这两个是相同,能看懂吗?就比如这个Windows,这是这是Windows操作系统,这是Linux操作系统啊,然后呢,Windows操作系统要安装Windows版本Java虚拟机,Linux操作系统上需要安装Linux版的Java虚拟机啊,所以说Java虚拟机是不一样的,操作系统是不一样的,但是你的Java程序是一样的,而你的Java程序是运行在Java虚拟机上,你的Java程序是放在Java虚拟机,所以你的Java程序压根就没有和Windows打交道,你的Java没有运行Windows上,你的Java没有运行在Linux上,没有你是放在一个容器里边,你放在一个。哎,Java所谓的Java虚拟机,所以非常经典的那句话,我刚才已经说完了,就是什么?就是Java虚拟机的屏蔽的操作系统之间的差异,就是他把操作系统之间的差异给屏蔽掉了。啊,他当时是采用这种方式的,但是这个我刚才说了,有优点也有缺点,优点是什么,优点就是。
01:03
啊啊,咱们跨平台了对吧,编写一次,但是缺点是麻烦,就是说你你这个程序直接扔到Windows里能运行吗?运行不了,你的这个程序直接扔到Linux里面能运行吗?运行不了,你必须得有JVM啊,而你要想有JVM,你必须得有JDK啊JDK你安装上JDK才可以啊,JDK才可以好了,那这个呢,是关于我们这块的一个。呃,一个Java语言的一个一个特性,各位啊,一个是简单性啊,相对而言,还有一个是呢,是面向对象,还有个是见状性,还有一个是多线程,还有一个是可一致性,跨平台,其实除了这五个特性之外呢,还有一些别的特性啊,还有很多很多,我在这里呢,就不再给大家一一列举了啊,重点说几个就可以了,那么接下来呢,我们要重点给大家说这么几个术语啊,这么几个术语来。这个呢,图片我应该是保存了啊,然后这个关了就行了,嗯,这块呢,再往下就是我们今天的第一。
02:01
二个大点了啊,第一个点加语言特性,那么第二点是什么呢?是关于什么呢,就是。我们JDK。还有JM啊关首先说一下各位啊,JDK是什么?J re是什么?然后JM是什么?我说一下啊,JDK是Java开发工具箱,那么jre是Java运行环境。啊,然后JVM是Java虚拟机啊,Java虚拟机要知道啊,JDK包括j re j re包括JVM。啊,JDK是最大的,它包括什么呢?GRE。啊,Re,是Java的运行环境啊,Java runtime environment。
03:00
嗯。老师呢,普通用户没有JDK怎么运行?那普通用户那没有你得安装一个呀,你得装一个呀。对吧,如果你不会装的话,那你谁给你开发,你花钱让哪个公司给你开发的软件,你就让他给你安装,给你部署就行了,现在不是有个职位叫软件实施工程师吗?软件实施工程师或者运维他就是。他不是这个意思。学Java才有JDK装装。不是不是啊,你比如说你现在你给这个同仁医院,或者是这个,呃,北京大学附属医院,你你给他们开发个医院系统,你开完这个系统之后,你得派运维啊,你派实施过去给人装去啊,你到那之后,你可能得给人家医院装一下这个这个这个这个JDK呀啊,然后把这个项目部署一下呀,一般用户是运行不了的啊。一般用户他没有学过Java,他不懂Java,他怎么运行这玩意儿,对不对啊,那么jdk j re和JVM3者之间的关系啊,要首先要知道他们这三者都是什么啊,都是什么。
04:02
来,呃,那么这个JDK啊,是Java的development kit啊,Java是Java开发工具箱啊,呃,然后呢,再往下这个jre是什么呢?是Java的一个运行词环境啊,这个运行环境,然后呢,还有个叫JVM的JVM是什么呢?是Java的VI machine,表示Java虚拟机缩缩这载东户va行。那这个不是啊。这个京东软件的,如果你你是说你是说那个那个什么那个浏览器上的京东,还是说你手机APP呀。你说的是手机APP吧?手机APP,那可能不是那个不是家啊,那是A,那是AK软件对五中说的有道理啊,有道理。不是一个东西啊,不是一个东西。
05:00
那么这块的话,咱们接着看啊,接着看就是说这三者之间的关系,呃,在这个图上可以展现出来啊,最大的这个颜色啊,这最外边这个这个叫做这是JDD,里边是jre,里边是什么呢?是GM啊是GM那行,那么这个接下来呢?呃,我想问一下大家一个问题啊,问一下大家的问题,GVM能独立安装吗?不能各位啊,我自问自答吧啊,因为可能网络有点延迟,咱们就我就我就直接说了啊呃,JVM是不能独立安装的啊。但是j re和JDK都是可以独立安装的。就是有单独的JDK安装包。啊,也有单独的jre安装包。啊,没有单独的JVM安装包。啊,安装JDK的时候,GRE就自动安装了啊,同时同时这个j re下面的啊,或者GRE内部的JVM也就自动安装了。
06:16
啊,那安装jre的时候JVM啊也就自动安装了,我不知道这么说大家理解不理解啊,就这三个,这个这个JDK,这个jre,还有JVM,这三者之间的一个关系是JDK包括j re j re包括JVM,然后独立安装性呢,要注意JVM不能独立安装啊,你这块呢,有一个这个JDK啊,有一个JDK可以独立安装,它是有独立安装包的,然后j re呢也有独立安装包,然后JVM没有独立安装包,但是你安装jre的时候,它会自带JM,你安装JDK的时候,它会自带j re加JM啊是这样一个关系,各位啊,这样一个关系,那么现在。嗯,现在我问大家一个问题啊,问题来了,问题来了,假设你在软件公司开发了一个。
07:09
新的软件现在要去客户那边啊,要去客户那边。给客户把项目。部署一下啊,把项目部署一下啊,把项目怎么着啊跑起来。你需要安装JDK吗?就是说我想问的就是,假如说我现在在北京,我开发了一个软件,我是给这个武汉啊,比如开发的,那么这个时候呢,我这个我这个出差了,出差去武汉干什么呀,我到跑到客户那边,给客户这个部署这个项目去了,我把这个项目跑起来,那你说大家想一想,我需不需要安装JDK,还是说我只安装GRE就行了。哎,这有同学说的啊呃,只安装jre啊,对啊,这个答案是只需要安装jre就行了啊jre啊,体积很小啊呃,安装非常便捷快速啊,便捷快速。
08:11
那么这个东西呢,有独立的安装包啊,独立安装包。呃,你又不在这个武汉的这个客户机器上干什么呀,你开发,所以你不需要安装JDK,你可能在这个武汉的这个机器上你干啥呀?哎,你只要运行就行了,所以你只要安装一个GRE就可以了啊嗯,好,我再问大家一个问题,又来一个。为什么安装JDK的时候会自带一个GRE?会自带一个。为什那我们呢,你开发完这个Java程序。你是不是需要先让这个程序运行起来测试一下?
09:01
对吧。所以说你这个程序员在安装JDK的时候,你肯定是要自带D啊,要自带D啊,为什么安装JDK的时候会自带一个。因为Java程序员开发完程序之后,要测试这个程序啊,让这个程序运行起来需要jre啊,所以JDK安装的时候。啊,自带啊内部吧,内部自带一个J啊,内部自带一个G。对开发的程序也要进行测试,运行测试,所以这块的话,咱们呃,要知道这个事儿啊,知道这个事儿就行了,好了,那这个呢,是关于我们jdk jre和JM3者之间的关系啊,啊我再强调一下,JDK是Java开工具,然后j re是Java运行环境,JM是Java虚拟机,能够达到跨平台的是哪个啊,达到跨平台是我们呢J啊,不同的操作系统上需要安装不同版本的J,不同的操作系统上需要安装不同版本的jre啊,有Windows版的J,有linus版本的jre,或者有Windows版的JDK,也有Linux版本的JDK。
10:18
啊,你看你的操作系统是啥啊,你比如咱们班有没有苹果本啊,有没有苹果本,苹果本有吗?有的话打个一应该是有的啊,应该是有的,有苹果本的话,那你那个你要装这个JDK的话,你得从这个Oracle官网下载这个,呃,苹果本专用的这个JDK啊。你这个Windows的肯定用不了啊,Windows肯定用不了,那么这块的话,咱们这个关于这三个术语,我们就说到这儿。
我来说两句