zoukankan      html  css  js  c++  java
  • Java_程序内存分析

    Java虚拟机的内存可以分为三个区域: 栈Stack,堆heap,方法区method area
      栈的特点:方法执行的内存模型,每个方法被调用都会创建一个栈帧(储存局部变量,操作数,方法出口等);
      JVM为每个线程创建一个独立的栈,用于存放该线程执行方法的信息;
      栈属于线程私有,不能实现线程间的共享;
      栈是由系统自动分配,速度快,栈是一个连续的内存空间。
    堆的特点
      用于存储创建好的对象和数组;
      JVM只有一个堆,被所有线程共享;
      堆是一个不连续的内存空间,分配灵活,速度慢;
    方法区:
      实际也是堆,只是用于储存类,常量相关的信息;

    public class Student {
    
        //属性fields
        int id;
        String name;
        int age;
        
        Computer comp;
        
        void study() {
            System.out.println("学习"+comp.brand);
        }
        void play() {
            System.out.println("游戏");
        }
        
        
        //程序执行的入口,必须要有的。
        public static void main(String[]args) {
            Student stu = new Student();//创建一个新的对象
            stu.id=001;
            stu.name="spencer";
            stu.age=28;
            
            Computer c1=new Computer();
            c1.brand="apple";
            
            stu.comp=c1;
            stu.study();
        }    
    }
     
    class Computer{
        String brand;
    }

  • 相关阅读:
    linux性能测试(转)
    mysql基本操作(数据库,表,字段,记录)
    mysql数据库的简介(安装和卸载)
    mysql数据库
    枚举法
    python数据结构与算法简介
    自学心得
    python 进程线程阅读摘抄
    python并发编程多线程基础1
    python队列
  • 原文地址:https://www.cnblogs.com/spencersun/p/9626613.html
Copyright © 2011-2022 走看看