java 基本类型 引用类型_Java中的基本类型和引用类型变量的区别
基本類型:
基本類型自然不用說了,它的值就是一個數(shù)字,一個字符或一個布爾值。
引用類型:
是一個對象類型,值是什么呢?它的值是指向內(nèi)存空間的引用,就是地址,所指向的內(nèi)存中保存著變量所表示的一個值或一組值。
舉例說明:
int? a;
a=250; //聲明變量a的同時,系統(tǒng)給a分配了空間。
引用類型就不是了,只給變量分配了引用空間,數(shù)據(jù)空間沒有分配,因為誰都不知道數(shù)據(jù)是什么,整數(shù),字符?我們看一個錯誤的例子:
MyDate today;
today.day = 4; //發(fā)生錯誤,因為today對象的數(shù)據(jù)空間未分配。
那我們怎么給它賦值?引用類型變量在聲明后必須通過實例化開辟數(shù)據(jù)空間,才能對變量所指向的對象進行訪問。舉個例子:
MyDate today;??????????? //將變量分配一個保存引用的空間
today = new MyDate();???? //這句話是2步,首先執(zhí)行new MyDate(),給today變量開辟數(shù)據(jù)空間,然后再執(zhí)行賦值操作
//引用變量賦值
MyDate a,b;??????????????????? //在內(nèi)存開辟兩個引用空間
a? =? new MyDate();??? ?//開辟MyDate對象的數(shù)據(jù)空間,并把該空間的首地址賦給a
b? =? a;????????????????????????????? ?//將a存儲空間中的地址寫到b的存儲空間中
如下圖示
引用傳遞 和 值傳遞
引用類型:除了在函數(shù)傳值的時候是"引用傳遞",在任何用"="向?qū)ο笞兞抠x值的時候都是"引用傳遞"。
值傳遞:基本類型的傳遞都屬于值傳遞,和C語言一樣,當把Java的基本數(shù)據(jù)類型(如 int,char,double等)作為入口參數(shù)傳給函數(shù)體的時候,傳入的參數(shù)在函數(shù)體內(nèi)部變成了局部變量,這個局部變量是輸入?yún)?shù)的一個拷貝,所有的函 數(shù)體內(nèi)部的操作都是針對這個拷貝的操作,函數(shù)執(zhí)行結(jié)束后,這個局部變量也就完成了它的使命,它影響不到作為輸入?yún)?shù)的變量。這種方式的參數(shù)傳遞被稱為"值 傳遞"。
總結(jié)
以上是生活随笔為你收集整理的java 基本类型 引用类型_Java中的基本类型和引用类型变量的区别的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 个人信用卡多有什么风险 你不可不看
- 下一篇: 办个人信用卡要多久 快速申卡的捷径在这里