Java中的堆内存与栈内存
Posted peng-yankee
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java中的堆内存与栈内存相关的知识,希望对你有一定的参考价值。
1、栈内存用来存放一些基本类型的变量、数组和对象的引用;堆内存主要用来存放一些对象。
2、static变量:静态变量是static修饰的变量,实例变量是非static修饰的变量。
3、静态变量与实例变量的区别:
1)静态变量是随着类加载时被完成初始化,它可以在内存中仅有一个,且JVM也只会为它分配一次内存,同时所有类的实例都共享静态变量,可以通过类名来直接访问。
2)实例变量是随着实例的,每创建一个实例就会产生一个实例变量,它与该实例同生共死。
4、static方法:
static修饰的方法称之为静态方法,可以通过类名直接调用。由于在类加载时就已经存在,它不依赖于任何实例,所以static方法必须实现,不能是抽象方法abstract。
以上是关于Java中的堆内存与栈内存的主要内容,如果未能解决你的问题,请参考以下文章