Java中有兩種數據類型:原始類型和引用類型。它們之間最大的區別是,原始類型存儲的是實際值,而引用類型存儲的是對象的引用。在Java中,原始類型包括int、float、double、boolean等基本數據類型,引用類型包括類、接口、數組等。
int a = 10; //定義一個整型變量a,并賦值為10 int b = a; //將a的值賦給b a = 20; //改變a的值為20 System.out.println(b); //輸出10,b的值沒有改變
這里我們聲明了兩個整型變量a和b,并把a的值10賦給b。當我們將a的值改變為20時,b的值沒有發生任何改變。這是因為a和b存儲的是原始值,而不是對象的引用。
Dog dog1 = new Dog("旺財"); //創建一個名為"旺財"的Dog對象,保存在變量dog1中 Dog dog2 = dog1; //將dog1的引用復制給dog2 dog1.setName("小黃"); //改變dog1對象的名字為"小黃" System.out.println(dog2.getName()); //輸出"小黃",dog2引用的對象也受到了影響
在這個例子中,我們創建了兩個Dog對象,其中一個被保存在dog1變量中。我們還創建了另一個變量dog2,并將dog1的引用賦給它。當我們改變dog1對象的名字時,dog2引用的對象也受到了影響。這是因為dog1和dog2存儲的是Dog對象的引用。
總之,了解Java的值類型和引用類型的區別對于正確的編程至關重要。它們的用法和行為不同,正確的理解和使用它們將會幫助我們寫出高效、可靠的代碼。