Ⅰ java中值類型和引用類型的區別
(1)值類型:數據存儲在內存的堆棧中察明,從堆棧中可以快速地訪問這些數據,因此,值類型表示實際的數據。
(2)引用類型:對象、數組、函數。
1、值類型:包括:sbyte、short、int、long、float、double、decimal(以上值類型有符號)byte、ushort、uint、ulong(以上值類型無符號)bool、char
2、引用類型:包括:對象類型、動態類型、字元串類型。二、具體區別:
1、值類型:byteb1=1;byteb2=b1;Console.WriteLine("{0},{1}。",b1,b2);b2=
2;Console.WriteLine("{0},{1}。",b1,b2);Console.ReadKey();解釋:byteb1=1;聲明b1時,在棧信悶內開辟一個內存空間保存b1的值1。byteb2=b1;聲明b2時,在棧內開辟一個滑沒彎內存空間保存b1賦給b2的值1。Console.WriteLine("{0},{1}。",b1,b2);輸出結果為1,1。b2=2;將b2在棧中保存的值1改為
2。Console.WriteLine("{0},{1}。",b1,b2);輸出結果為1,2。
2、引用類型:復制代碼。
Ⅱ java中值類型和引用類型的區別
(1)值類型:數據存儲在內存的堆棧中,從堆棧中可以快速地訪問這些數據,因此,值類型表示實際的數據。
(2)引用類型:對象、數組、函數。
1、值類型:包括:sbyte、short、int、long、float、double、decimal(以上值類型有符號)byte、ushort、uint、ulong(以上值類型無符號)bool、char
2、引用類型:包括:對象類型、動態類型、字元串類型。二、具體區別:
1、值類型:byteb1=1;byteb2=b1;Console.WriteLine("{0},{1}。",b1,b2);b2=
2;Console.WriteLine("{0},{1}。",b1,b2);Console.ReadKey();解釋:byteb1=1;聲明b1時,在棧內開辟一個內存空間保存b1的值1。byteb2=b1;聲明b2時,在棧內開辟一個內存空間保存b1賦給b2的值1。Console.WriteLine("{0},{1}。",b1,b2);輸出結果為1,1。b2=2;將b2在棧中保存的值1改為
2。Console.WriteLine("{0},{1}。",b1,b2);輸出結果為1,2。
2、引用類型:復制代碼。