Java的引用類型(reference type)指向一個對象,不是原始值,指向?qū)ο蟮淖兞渴且米兞俊O旅嫖靼策_內(nèi)Java培訓(www.xatarena.cn)講師就詳細為大家介紹。
在java里面除去基本數(shù)據(jù)類型的其它類型都是引用數(shù)據(jù)類型,自己定義的class類都是引用類型,可以像基本類型一樣使用。
示例如下:
public class MyDate {
private int day = 8;
private int month = 8;
private int year = 2008;
private MyDate(int day, int month, int year){...}
public void print(){...}
}
public class TestMyDate {
public static void main(String args[]) {
//這個today變量就是一個引用類型的變量
MyDate today = new MyDate(23, 7, 2008);
}
}
引用類型的賦值
在java編程語言中,用類的一個類型聲明的變量被指定為引用類型,這是因為它正在引用一個非原始類型,這對賦值具有重要的意義。如下代碼:
int x = 7;
int y = x;
String s = "Hello";
String t = s;
四個變量被創(chuàng)建:兩個原始類型 int 和兩個引用類型String。x的值是7,而這個值被復制到y(tǒng);x和y是兩個獨立的變量且其中任何一個的進一步的變化都不對另外一個構(gòu)成影響。至于變量s和t,只有一個String對象存在,它包含了文本"Hello",s和t均引用這個單一個對象。
如果將變量t重新定義為t="World";則新的對象World被創(chuàng)建,而t引用這個對象。
西安達內(nèi)科技Java培訓講師表示,“在Java里面參數(shù)傳遞都是按值傳遞”這句話的意思是:按值傳遞是傳遞的值的拷貝,按引用傳遞其實傳遞的是引用的地址值,所以統(tǒng)稱按值傳遞。在Java里面只有基本類型和按照下面這種定義方式的String是按值傳遞,其它的都是按引用傳遞。就是直接使用雙引號定義的字符串方式:String str = "Java快車"; |
 |
|