Java的运行机制(一)

Java的运行机制(一)前言:还是那句话,第一、凡是涉及到概念性内容的时候,我都会到官网去确认内容的真实性!第二、我喜欢偏向于原理学习。在java介绍里面,我认为知道这是一门完全面向对象的语言就足够了。我的导师说C++是认为程序员是很强大的,开放了所有的功能权限;Java是认为程序员不是那么全能的,有些危险的操作,不会让你执行。不知道您是否也这么认为呢?目录一、类的结构二、运行机制1、编译方式…

大家好,又见面了,我是你们的朋友全栈君。

前言:还是那句话,第一、凡是涉及到概念性内容的时候,我都会到官网去确认内容的真实性!第二、我喜欢偏向于原理学习。在 java介绍里面,我认为知道这是一门完全面向对象的语言就足够了。C++认为程序员是很强大的,开放了所有的功能权限;Java是认为程序员不是那么全能的,有些危险的操作,不会让你执行。

目录

一、 类的结构

二、 运行机制

1、 编译方式

2、 运行

3、JVM

4、 原理

编译原理

运行原理


一、 类的结构

//HelloWorld是自定义类名与cpp一样,
//不一样的是这个类名一定要和文件名一致,
//每个单词的首字母需要大写。
class Helloworld{
    //主方法入口
    public static void main(String [] args){
        //在控制台输出的方式
        System.out.printIn("Hello,world");
    }
}

二、 运行机制

先了解一下什么是JVM、JDK、JRE,学习直通车:JVM、JRE与JDK三者的区别_DJun的博客-CSDN博客

在java中,我们写出来的代码都是源代码(*.java),源代码是不能执行的,必须编译成字节码文件(*.class)

运行前提:下载了java,将java的bin目录添加到了系统的环境变量中。你会发现在bin目录中有javac.exe与java.exe的文件。作用如下:

1、 编译方式

javac  文件名 .java

2、 运行

java  文件名.class

3、JVM

JVM是什么?

说白了就是java的字节码文件运行时创建的虚拟机,然后在运行.class文件。至于java如何创建的JVM,有兴趣的话也可以了解一下。

在C++中,  C++没有虚拟机这种概念,也就是说C++一旦编译就可以运行,是一种编译型语言,速度上一般比JAVA快得多(这个要看个人水平写出来的程序运行的效率),C++编译完成后是机器码(二进制文件)可以直接在操作系统上运行。

4、 原理

编译原理

在Java的运行环境中,JRE包括JVM和Java的核心类库。

Java的运行机制(一)

运行原理

首先任何程序的运行都离不开计算机的内存!当我们切换到盘符下面执行HelloWorld的时候,会立即在计算机的内存里面创建一个JVM,再把HelloWorld.class这个文件调到JVM中。

Java的运行机制(一)

下一章节:Java的标识符与数据类型——有C++基础的Java入门(二)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/157135.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 图像去噪序列——BM3D图像去噪模型实现

    图像去噪序列——BM3D图像去噪模型实现1.BM3D模型简介BM3D模型是一个两阶段图像去噪方法,主要包含两个步骤:(1)在噪声图像上,利用局部区域搜索相似块,并进行堆叠,在变换域(DCT域、FFT域)利用硬阈值去噪方法对堆叠的图像块进行去噪,获得堆叠相似块的估计值,最后,根据均值权重进行聚合;(2)通过步骤(1)获取初步估计的图像,在初步估计的图像上进行相似块的聚合;然后,利用维纳协同滤波进行图像去噪,从而,获取最后的去…

    2022年6月4日
    29
  • qmap的书写格式linux,QMap 键值存储「建议收藏」

    qmap的书写格式linux,QMap 键值存储「建议收藏」Qt中的QMap介绍与使用,在坛子里逛了一圈,发现在使用QMap中,出现过很多的问题,Map是一个很有用的数据结构。它以“键-值”的形式保存数据。在使用的时候,通过提供字符标示(键)即可得到想要的数据。这个“数据”即可以是一个字符串,也可以是任意对象,当然也包括自己定义的类对象。说明:map是以值传递的形式保存数据的。1.基本应用下面以“键-值”都是QString的例子说明QMap的基本使用方法…

    2022年5月7日
    77
  • 成功的测试通常是运行测试用例后_成功的测试是指运行测试用例后

    成功的测试通常是运行测试用例后_成功的测试是指运行测试用例后前言用过pytest的小伙伴都知道,pytest的运行方式是非常丰富的,可以说是你想怎么运行怎么运行,想运行哪些运行哪些,那httprunner是否同样可以呢?运行用例的各种方式运行指定路径的用

    2022年7月28日
    8
  • Python中的基本list操作[通俗易懂]

    Python中的基本list操作[通俗易懂]List是python中的基本数据结构之一,和Java中的ArrayList有些类似,支持动态的元素的增加。list还支持不同类型的元素在一个列表中,ListisanObject。最基本的创建一

    2022年7月5日
    24
  • android sdk manager安装,Android SDK Manager安装过程

    android sdk manager安装,Android SDK Manager安装过程1、首先要下载安装JavaJDK,下载地址:http://pan.baidu.com/share/link?shareid=7368&uk=2148507123然后在下载最新的AndroidSDK4.1文件,下载地址:http://dl.google.com/android/android-sdk_r20-windows.zip或:http://pan.baidu.com/share…

    2022年7月21日
    21
  • 华为海关单据识别服务–基于文字识别技术[通俗易懂]

    华为海关单据识别服务–基于文字识别技术[通俗易懂]业务背景目前,华为公司在海外设有4大供应中心,海关报关单全球一年有35w份左右(其中中国进口5w份,出口15w份,及香港进出口10w份,其它子公司5w份左右)。现在的单据处理方式还停留在通过人工方式将单据内容手动录入到系统中,人工录入的方式除了效率低以外,还存在员工疏忽或者疲劳导致的误操作。如何快速、准确的处理如此数量庞大的单据成为了供应链的一大诉求。问题描述海关报关单据是单据中较为常见的一…

    2022年9月21日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号