温馨提示:文本由机器自动转译,部分词句存在误差,以视频为准
00:00
那结合着刚才提到的虚拟机和Java虚拟机的这个概念呢,我们来看GM它的所处的一个位置,从几个不同的角度呢来说一下,那这呢是承载我们刚才讲的这个概念啊,基于具体的硬件就换个颜色啊,基于具体硬件呢,我们上面搭建的叫操作系统,操作系统上面呢装虚拟机,然后虚拟机用来解释运行这个自解码文件啊,这是用户提供的自解码文件啊,就是这样的一个过程,那刚才呢,我们提到了一个呢,叫做系统虚拟机,那系统虚拟机呢,实际上是对硬件的一个模拟。啊,是模拟这样一个硬件的情况,那这个。程序虚拟机啊,典型的就是Java虚拟机了哈,它模拟的是我们这样的一个位置啊,是它哈,是基于操作系统上具体的一个呃解释运行某一个应用程序,我们需要的一个虚拟的环境,像这呢,我们叫Java虚拟机了,是这样的一个情况啊,从这个角度呢,大家去理解一下我们刚才说的这个概念,那Java虚拟机呢,咱们是运行在操作系统之上的,它没有和硬件呢做一个直接的交互啊,这个大家要清楚,而且呢,咱们也知道在装JDK的时候呢,咱们还得需要关注,你到底是把JDK装在哪一个操作系统上,因为不同的操作系统上装的GVM呢是有区别的。
01:18
啊是有区别的啊行,那这个图呢,是Java吧,官网提供的一个图啊,这个图呢,我们想直接说明的就是这个JDK的一个构成了啊,那JDK这个jre和GM的一个关系,这个咱不用多说了啊,包括呢,JDK的下载安装环境变量配置,这个再讲的话呢,有点侮辱你智商是吧,这个我们就不讲啊,那我们说这个JDK的构成的话呢,嗯,首先说Java程序,我们想让它运行成功,首先呢,Java有两个过程啊,第一个呢,需要编译成自解码文件,这呢是我们说这个点Java的这个源文件啊,编译成这个点点class的这个自解码文件,那这呢需要用到这个叫编译器,这个编译器呢,我们通常称为叫前端编译器,典型的话呢,现在使用的像Java c这属于叫前端编译器,所以呢,诶包括了JDK当中,包了我们涉及到一些编译器这样的结构,那有了四件码文件以后呢,我们就可以进行解释运行,那这里边呢,又涉及到我们相关的一些Java的API,包括呢解释运行啊包括后端。
02:19
等呢解释运行过程当中还涉及到后端的编译器,这呢都属于我们GM这个层面的内容,那大家之前学习的话呢,应该重心都在API,那今天呢,我们相当于重心呢,是在GVM啊是这个意思啊,清楚这里边儿的一个相互关系。那么以前的时候呢,呃,这个也写过这个安卓程序哈,那安卓的时候呢,我们简单回顾一下,它也有这样的一个几层的一个架构哈,呃,安卓呢是基于Linux内核的,嗯,然后下面呢,提供了相关的一些library的一些库哈,各个方面包括数据库等等,然后上面呢,是一些具体的应用框架,然后框架下的一些具体的应用程序,在这个位置呢,我们会看到啊这个安卓安卓的话呢,在5.0之前,它用的都是叫deal虚拟机了,这个de虚拟机呢,其实当然跟我们Java虚拟机其实没什么关系了啊,或者你列成是一个变种也行,因为它也是用Java语言作为一个开发语言的啊呃,解释运行的是叫点dex文件,不是咱们d class文件了,呃,这呢也提供一个虚拟机去解释运行这个安卓的这个具体的应用程绩,呃,这个程序啊,也就是说具体应用程序它在解日运行的时候呢,诶都需要提供一个虚拟的环境啊,前面呢是叫Java虚拟机,这呢叫做单位虚拟机。
03:36
啊行,这个大家了解一下就行啊,这呢我们提到是GM的一个位置啊,需要大家清楚的。
我来说两句