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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • html js 全局 变量,JS定义全局变量

    html js 全局 变量,JS定义全局变量【实例名称】定义全局变量【实例描述】在高级开发语言(如c#、Java)中可以很方便地使用“public”等关键字,定义应用程序中的全局变量,但JaVascript的变量只能存在于当前的方法中。本例通过一个简单的方法实现全局变量的定义。【实例代码】标题页-学无忧(www.xue51.com)functiontoGlobal(varName){window.execScript(varName)…

    2022年6月6日
    103
  • HLS协议详解[通俗易懂]

    HLS协议详解[通俗易懂]今天来介绍一下HLS协议,这个协议是由苹果公司提出并推广开来的。来一段维基百科的定义。HTTPLiveStreaming(缩写是HLS)是一个由苹果公司提出的基于HTTP的流媒体网络传输协议。是苹果公司QuickTimeX和iPhone软件系统的一部分。它的工作原理是把整个流分成一个个小的基于HTTP的文件来下载,每次只下载一些。当媒体流正在播放时,客户端可以选择从许多不同的

    2025年6月19日
    2
  • idear 激活码【在线破解激活】

    idear 激活码【在线破解激活】,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月16日
    63
  • 免费好用的图片压缩网站,有这五个就够了(收藏备用)

    免费好用的图片压缩网站,有这五个就够了(收藏备用)前言当我们想要线上报名提交照片时,大小却超过范围,这时就需要压缩软件的帮助。但大多主流的软件可以压缩但想要下载就需要收费了,下面是五个国内外免费的压缩平台。一、OnlineImage优点:图片可以压缩90%以上,可以批量压缩,速度只需要几秒钟完全免费,无数量限制,支持绝大多数图片压缩格式缺点:不支持自定义图片大小压缩,广告比较多网站链接为:https://www.onlineimagetool.com/zh/二、Docsmall……

    2022年6月18日
    101
  • QT中this指针

    QT中this指针一:this指针只能在一个类的成员函数中调用,它表示当前对象的地址。下面是一个例子: void Date::setMonth( int mn) { month=mn; // 这三句是等价的 this->month=mn; (*this).month=mn; }1.this只能在成员函数中使用。全局函数,静态函数都不能使用th

    2022年5月17日
    140
  • vim中复制粘贴快捷键_复制文件的快捷键

    vim中复制粘贴快捷键_复制文件的快捷键yy复制游标所在行整行。或大写一个Y。 2yy或y2y复制两行。ㄟ,请举一反三好不好!:-) y^复制至行首,或y0。不含游标所在处字元。 y$复制至行尾。含游标所在处字元。 yw复制一个word。 y2w复制两个字(单词)。 yG复制至档尾。 y1G复制至档首。 p小写p代表贴至游标后(下)。 P大写P代表贴至游标前(上)。如果只是想使用系统粘贴板的话直接在输入模式按Shift+Inset…

    2022年9月22日
    0

发表回复

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

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