`

java程序执行过程分析

阅读更多



         接下来,以java程序执行时内存里数据指向为主线,来复习一下相关的知识。

       1、java中除了基本数据类型,只有引用类型。且所有的引用类型变量都是占有四四个字节。

       2、当new一个对象后,且为默认构造函数,属性的初值判断如下

  六种数值类型:小数0.0,其余为0。char类型为/000,boolean类型为false;对于

引用数据类型比如String 初值为null。

3、对象都是通过引用来完成调用的。

掌握了上面的开始内存分析了。

        1、栈:存放局部变量

             堆:存放new出来的实例对象

            方法区:类的信息,static变量,常量池。

 

 

 可以看到:1、栈区是连续的,堆区不是连续的。

 2、执行Student s1,发现方法区目前为空,变到class文件里找有没有Student这个类,有便把类的信息,属性,常量,方法等加载到方法区。如果没有,就抛出class没有找到的异常(ClassNotFoundException)。 类当再次有引用数据Student s2便会直接使用方法区的类信息,而不需要再吃从class文件加载

 

class Student{

 String name;

int id;

int age;

String gender;

float weight;

public void study(){

Syso(name+"正在学习");

}

public void sayHello(String name){

Syso(this.name+"对+"name"+说,你好");

}

}

class TestMemory{

Student s1=new Student();

s1.name="小钱";

s1.study();

s1.sayHello("小李");

Student s2=new Student();

s2.name="小马";

s2.age=77;

}

  • 大小: 225.4 KB
分享到:
评论

相关推荐

    西南科技大学Java程序设计与实践 实验四 GUI实验实验报告及源码

    西南科技大学Java程序设计与实践 实验一、实验目的: 练习面向对象的图形用户界面设计、界面布局、事件设计方 法。 二、实验内容: 设计一个类似Windows计算器的Application应用程序。 三、实验要求: 1、采用Java ...

    java中多态的内存分析

    想要下载此文件,请先下载本人“java程序中的内存分配问题”,因为那个例子比较简单而且分析详细透彻,可以使你更容易理解,如果你对java程序执行过程中的内存分配有一定的了解,可以直接下载本文件

    java中带static关键字的程序内存分析

    想要下载此文件,请先下载本人“java程序中的内存分配问题”,因为那个例子比较简单而且分析详细透彻,可以使你更容易理解,如果你对java程序执行过程中的内存分配有一定的了解,可以直接下载本文件

    java中与继承有关的程序内存分析

    想要下载此文件,请先下载本人“java程序中的内存分配问题”,因为那个例子比较简单而且分析详细透彻,可以使你更容易理解,如果你对java程序执行过程中的内存分配有一定的了解,可以直接下载本文件

    java程序中的内存分配问题

    本例通过一个简单的java程序来阐述了程序在执行过程中内存的动态分配,但分析过程非常详细,适合java初学者

    JAVA程序设计实验指导书

    Java程序设计是计算机科学与技术、网络工程、软件工程、物联网工程专业的一门专业基础课程。本课程是一门实用性和综合运用性都很强的课程,实践教学环节是教学过程中必不可少的重要内容。通过实验,让学生熟悉JDK中...

    Java程序设计基础:设计解决问题的策略.pptx

    设计解决问题 的策略 基本程序设计--设计解决问题的策略 本讲主题 1 理解什么是程序 2 了解程序设计的基本步骤 3 掌握设计解决问题的策略 程序一词来自生活,通常指完成某些事物的一...//Java程序 public class Comput

    计算机程序设计(Java)-教案--单元二--Java语言开发基础.docx.docx

    ・:・能熟练、准确地应用分支、循环、跳转三种流程执行过程; 教学重点 :・标识符命名规那么、数据类型与运算符; : 嵌套ifelse语句的用法; 教学难点 :・数值类型转换(强制转换、隐式转换)的用法; :・Switch...

    java中带super关键字的程序内存分析

    想要下载此文件,请先下载本人“java程序中的内存分配问题”,因为那个例子比较简单而且分析详细透彻,可以使你更容易理解,如果你对java程序执行过程中的内存分配有一定的了解,可以直接下载本文件

    Java基础教案\JAVA精讲入门

    JAVA入门基础篇,适合于初学者.第一章 Java语言入门 授课内容: ...7.分析Java运行过程,再次讲解Jvm、字节码等概念 8.简单介绍JSP技术 作业: 1. 配置环境变量 2. 完成第一个Java程序的编译及运行

    JAVA 词法分析程序(图形界面 版)

    该资源包含两类词法分析程序(JAVA版) 1.形如 Abgdsh5236:=36236.6236 2.形如 Djahgjh236626:=326236.2363+636.236236 已经做出图形界面版,点击即可运行(附带源码)

    java学生信息管理系统毕业设计程序

    整个开发过程首先对系统进行需求分析,得出系统的主要功能。接着对系统进行总体设计和详细设计。总体设计主要包括系统功能设计、系统总体结构设计、系统数据结构设计和系统安全设计等;详细设计主要包括系统数据库...

    java中带有不同构造方法的程序内存分析

    想要下载此文件,请先下载本人“java程序中的内存分配问题”,因为那个例子比较简单而且分析详细透彻,可以使你更容易理解,如果你对java程序执行过程中的内存分配有一定的了解,可以直接下载本文件

    java中带有this关键字的程序内存分析

    想要下载此文件,请先下载本人“java程序中的内存分配问题”,因为那个例子比较简单而且分析详细透彻,可以使你更容易理解,如果你对java程序执行过程中的内存分配有一定的了解,可以直接下载本文件

    JAVA语言程序设计课程教学大纲.doc

    (3)在对Java程序的调试过程中,提高学生分析程序中出现的错误和排除这些错误 的能力。 (4)通过上机实践,加深学生对计算机软件运行环境,以及对操作系统与计算机语 言支持系统相互关系的了解。 三、实践内容 ...

    java网上购物管理系统设计毕业设计程序

    整个开发过程首先对系统进行需求分析,得出系统的主要功能。接着对系统进行总体设计和详细设计。总体设计主要包括系统功能设计、系统总体结构设计、系统数据结构设计和系统安全设计等;详细设计主要包括系统数据库...

    Java 五子棋程序设计毕业论文

    1.2.3 java的运行环境 7 第二章 需求分析 8 2.1五子棋发展史 8 2.2五子棋功能说明 8 2.2.1操作界面需求 8 2.2.2程序流程 9 2.2.3主要模块结构 10 2.2.4 java中线程概念 10 2.3 Eclipse SDK 13 第三章 设计分析 13 ...

    第一章JAVA面向对象的程序设计.doc

    课程内容: 1、 什么是软件工程?要学些什么东西?培养一些什么能力? a) 机械工程、土木工程、生物工程。...2:JAVA程序设计教程( java How to Program Third Edition) 3: JAVA2参考大全(清华大学出版)

    java汽车租赁管理系统毕业设计程序

    整个开发过程首先对系统进行需求分析,得出系统的主要功能。接着对系统进行总体设计和详细设计。总体设计主要包括系统功能设计、系统总体结构设计、系统数据结构设计和系统安全设计等;详细设计主要包括系统数据库...

    java源码包---java 源码 大量 实例

    Applet钢琴模拟程序java源码 2个目标文件,提供基本的音乐编辑功能。编辑音乐软件的朋友,这款实例会对你有所帮助。 Calendar万年历 1个目标文件 EJB 模拟银行ATM流程及操作源代码 6个目标文件,EJB来模拟银行ATM...

Global site tag (gtag.js) - Google Analytics