helloworld的运行机制

public class helloworld{

  public static void main(String[] args){

   String s;

    s = "hello world!";

    System.out.println("输出:"+s); 

}

}

一个类中有且仅有一个主类,主类必须是static,然后是public,并且主类没有返回值。

java文件首先编译器编译为字节码文件,有几个方法编译几个字节码文件;然后由虚拟机执行,但单线程程序中,主方法是虚拟机的入口,

程序在运行时,方法区存放:首先由编译器编译一个类的字节码文件,四个类分别是:helloworld.class,String[].class,String.class,System.class;

堆中存放对象,里面包含:3方法:System.out,System.in,System.error

栈中包含变量,有args 数组,但是null数组串,还有s;

当虚拟机运行时,访问数组地址s,由于s指向“Helloworld”,调用String类中tostring方法,再有system类中的system.out输出。

个人理解不是很清楚,欢迎大家指出,

时间: 2024-11-01 10:59:21

helloworld的运行机制的相关文章

java运行机制详细

JVM(Java虚拟机)一种用于计算设备的规范,可用不同的方式(软件或硬件)加以实现.编译虚拟机的指令集与编译微处理器的指令集非常类似.Java虚拟机包括一套字节码指令集.一组寄存器.一个栈.一个垃圾回收堆和一个存储方法域. Java虚拟机(JVM)是可运行Java代码的假想计算机.只要根据JVM规格描述将解释器移植到特定的计算机上,就能保证经过编译的任何Java代码能够在该系统上运行. 1.为什么要使用Java虚拟机 Java语言的一个非常重要的特点就是与平台的无关性.而使用Java虚拟机是实

C语言工作原理和运行机制

计算机语言和人类高级语言的联系 可以说,所有的编程语言都是一个原理,使用人类能读懂的语言来编写源代码(source code),再利用编译器将源代码翻译成机器能读懂的语言,称为目标代码(object language). 在计算机底层硬件中,所有的数据都是以1和0两个高低电平来表示,计算机只能识别这两个电平. 编程语言类似于人类语言,我们很容易就能理解它的意思,编写代码的效率非常高. 但是,计算机只认识0和1,如何才能将“人类语言”转换成“0&1语言”呢?这就是编译器的工作了. 编译器能够将源代

什么是JDK,JRE以及Java的运行机制和环境变量path,classpath的区别

1,JDK SUN公司提供了一套Java开发环境,简称JDK,它是整个Java的核心,其中包括Java编译器,Java运行工具,Java文档生成工具,Java打包工具等. 2,JRE SUN公司除了提供JDK,还提供了一种JRE工具,它是Java的运行环境,只需要运行事先编写好的程序,因此JRE工具中只包含Java运行工具,不包含Java编译工具. 3,为了方便使用,SUN公司在其JDK工具中自带了一个JRE工具,也就是说开发环境中包含了运行环境,这样一来,开发人员只需要在计算机上安装JDK,不

深入理解struts的运行机制

在此申明本博文并非原创,原文:http://blog.csdn.net/lenotang/article/details/3336623,本文章是在此文章基础上进行优化.也谈不上优化,只是加上了点自己的想法 jar包准备 为什么会用到这两个jar包呢,因为我需要通过这个jar来解析xml配置文件. 新建项目 流程梳理 struts配置文件 <?xml version="1.0" encoding="UTF-8"?> <struts> <

Struts2运行机制

前言: 首先感谢中国最专业的java培训班<北京尚学堂>的无私奉献精神,免费提供这么多学习资料. 以及我的偶像马士兵老师,感觉您特帅,技术特别牛,今生若能相见,甚好.谢谢. struts2的运行机制: 探讨任何的运行机制,一定是这里开始, (http://localhost:8080/Struts2_Instroduction/hello.action)(.action可省略) 客户端在浏览器输入一个URL地址,这个请求通过http协议发送给tomcat,tomcat接收到请求后,查看请求的是

Spark架构及运行机制

Spark是基于内存计算的大数据并行计算框架.因为其基于内存计算,较Hadoop中MapReduce计算框架具有更高的实时性,同时保证了高效容错性和可伸缩性.从2009年诞生于AMPLab到现在已经成为Apache顶级开源项目,并成功应用于商业集群中.学习Spark就需要了解其架构及运行机制. Spark架构 Spark架构使用了分布式计算中master-slave模型,master是集群中含有master进程的节点,slave是集群中含有worker进程的节点. master作为整个集群的控制

SSL/TLS协议运行机制的概述

转自:SSL/TLS协议运行机制的概述 作者: 阮一峰 日期: 2014年2月 5日 互联网的通信安全,建立在SSL/TLS协议之上. 本文简要介绍SSL/TLS协议的运行机制.文章的重点是设计思想和运行过程,不涉及具体的实现细节.如果想了解这方面的内容,请参阅RFC文档. 一.作用 不使用SSL/TLS的HTTP通信,就是不加密的通信.所有信息明文传播,带来了三大风险. (1) 窃听风险(eavesdropping):第三方可以获知通信内容. (2) 篡改风险(tampering):第三方可以

【Spark Core】任务运行机制和Task源代码浅析1

引言 上一小节<TaskScheduler源代码与任务提交原理浅析2>介绍了Driver側将Stage进行划分.依据Executor闲置情况分发任务,终于通过DriverActor向executorActor发送任务消息. 我们要了解Executor的运行机制首先要了解Executor在Driver側的注冊过程.这篇文章先了解一下Application和Executor的注冊过程. 1. Task类及其相关 1.1 Task类 Spark将由Executor运行的Task分为ShuffleMa

JavaWeb三大组件——过滤器的运行机制理解

过滤器Filter 文章前言:本文侧重实用和理解. 一.过滤器的概念. lFilter也称之为过滤器,它是Servlet技术中最实用的技术,WEB开发人员通过Filter技术,对web服务器管理的所有web资源:例如Jsp, Servlet, 静态图片文件或静态 html 文件等进行拦截,从而实现一些特殊的功能.例如实现URL级别的权限访问控制.过滤敏感词汇.压缩响应信息等一些高级功能. 二.过滤器的运行机制. 没有加Filter的web项目运行机制如下: 加上Filter的web运行机制: 由