作者:魔方16674 | 来源:互联网 | 2023-09-06 21:33
本文主要介绍关于java,堆栈的知识点,对【Java堆栈】和【java虚拟机内存模型】有兴趣的朋友可以看下由【华谨舞】投稿的技术文章,希望该技术和经验能帮到你解决你所遇的【JavaSE基础】相关技术问
本文主要介绍关于java,堆栈的知识点,对【Java堆栈】和【java虚拟机内存模型】有兴趣的朋友可以看下由【华谨舞】投稿的技术文章,希望该技术和经验能帮到你解决你所遇的【JavaSE基础】相关技术问题。
java虚拟机内存模型
数据类型
基本数据类型: byte,short, int,long, float,doble,boolean,char。
引?数据类型:即除了基本的变量类型之外的所有类型(字符串、数组、对象等)。
java在内存中堆(Heap)、栈(Stack)两块存储空间。
基本的变量类型只有?块存储空间(分配在栈中),传递的时候直接是值传递,对数据进行操作,不影响原先的值。
引?类型有两块存储空间(?块在栈中,?块在堆中),?个对象在内存中会请求?块堆空间来保存数据,访问对象的时候不会直接是访问对象在堆内存中的数据,而是通过引用去访问。
引用
也是?种数据类型,保存的是内存的地址。
引用是存储在栈空间里面。
不同的引用可以指向同?个对象,?个对象可以有多个引用。
int a = 1;
char c = 'c';
boolean f = false;
Student student = new Student();
int[] arr1 = {
1,2,3};
String s = "123";
String a = "123";
String b = a;
b=a;
a="789";
int[] a = {
1,2,3};
int[] b = a;
a[1] = 4;
当一个引用改变指向对象时,其他指向该对象的引用不变。
当一个引用改变所指向对象内的数据时,其他指向该对象的引用也随之改变。
本文《Java堆栈》版权归华谨舞所有,引用Java堆栈需遵循CC 4.0 BY-SA版权协议。