真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

如何在Java中引用數(shù)據(jù)類型

如何在Java中引用數(shù)據(jù)類型?針對(duì)這個(gè)問(wèn)題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問(wèn)題的小伙伴找到更簡(jiǎn)單易行的方法。

讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來(lái)自于我們對(duì)這個(gè)行業(yè)的熱愛(ài)。我們立志把好的技術(shù)通過(guò)有效、簡(jiǎn)單的方式提供給客戶,將通過(guò)不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長(zhǎng)期合作伙伴,公司提供的服務(wù)項(xiàng)目有:主機(jī)域名、虛擬主機(jī)、營(yíng)銷軟件、網(wǎng)站建設(shè)、介休網(wǎng)站維護(hù)、網(wǎng)站推廣。

Java中的引用數(shù)據(jù)類型:

Java作為面向?qū)ο蟮恼Z(yǔ)言,Java中所有用class,interface,abstract class定義的都屬于Java的引用數(shù)據(jù)類型。

如何理解Java中的基本數(shù)據(jù)類型和引用數(shù)據(jù)類型:

1.Java的基本數(shù)據(jù)類型是由Java語(yǔ)言本身提供的數(shù)據(jù)類型,不需要用戶自己定義;

2.Java中的引用數(shù)據(jù)類型則是由用戶自己定義的,而引用數(shù)據(jù)類型的定義需要用到基本數(shù)據(jù)類型;

3.從內(nèi)存關(guān)系上來(lái)說(shuō):

Java的的內(nèi)存分為兩大塊:棧內(nèi)存和堆內(nèi)存

棧內(nèi)存負(fù)責(zé)存儲(chǔ)方法中的基本數(shù)據(jù)類型變量和對(duì)象的引用變量

堆內(nèi)存負(fù)責(zé)存儲(chǔ)通過(guò)new關(guān)鍵字產(chǎn)生的數(shù)據(jù),也就是new關(guān)鍵字后面的類中的屬性和方法。

Java中基本數(shù)據(jù)類型存儲(chǔ)在棧內(nèi)存中,而引用數(shù)據(jù)類型的類型名存儲(chǔ)在棧內(nèi)存中,但是引用數(shù)據(jù)類型的內(nèi)容則存儲(chǔ)在堆內(nèi)存中。兩者之間通過(guò)地址來(lái)連接,實(shí)現(xiàn)互相的訪問(wèn)。

如何在Java中引用數(shù)據(jù)類型

4.數(shù)據(jù)由小范圍往大范圍轉(zhuǎn)換時(shí),JVM會(huì)自動(dòng)幫我們實(shí)現(xiàn)類型的轉(zhuǎn)換。比如:int i=10;long l=i;類似于這樣的數(shù)據(jù)轉(zhuǎn)換,Java的虛擬機(jī)可以自動(dòng)幫我們來(lái)完成這個(gè)工作。但是當(dāng)數(shù)據(jù)由大范圍往小范圍轉(zhuǎn)換時(shí)就需要手動(dòng)的加上強(qiáng)制類型轉(zhuǎn)換。如果在轉(zhuǎn)過(guò)程中出現(xiàn)數(shù)據(jù)的溢出則根據(jù)小范圍的數(shù)據(jù)類型的值域進(jìn)行變動(dòng)。比如說(shuō)把整形的-129賦值給byte這時(shí)候輸出byte的值就是127;如果把整形的128賦值給byte類型,那么輸出的就應(yīng)該是-128。

Java中的參數(shù)傳遞:

基本數(shù)據(jù)類型:

public void test1(){
  int i=10;
  long l;
  l=i;
  System.out.println(i);//輸出值10
  System.out.println(l);//輸出值10
  l=i+1;
  System.out.println(i);//輸出值10
  System.out.println(l);//輸出值11
 }

由于基本數(shù)據(jù)類型是變量名與變量值一同存儲(chǔ)在棧內(nèi)存中,i 和 l 這兩個(gè)變量是互相獨(dú)立的,對(duì) l 的賦值操作并不會(huì)影響 i 值。

引用數(shù)據(jù)類型:

public class Book {
 private String name;

 public String getName() {
  return name;
 }

 public void setName(String name) {
  this.name = name;
 }
}
public class Test {
 public static void main(String[] args) {
  Book book1=new Book();
  book1.setName("《百年孤獨(dú)》");
  Book book2=new Book();
  book2.setName("《圍城》");
  System.out.println("book1:"+book1.getName());//輸出:book1:《百年孤獨(dú)》
  System.out.println("book2:"+book2.getName());//輸出:book2:《圍城》
  book1=book2;
  book1.setName("《活著》");
  System.out.println("book1:"+book1.getName());//輸出:book1:《活著》
  System.out.println("book2:"+book2.getName());//book2:《活著》

 }
}

如何在Java中引用數(shù)據(jù)類型

第一次new了兩個(gè)對(duì)象分別是book1,book2他們的書(shū)名分別是“百年孤獨(dú)”和“圍城”。然后通過(guò)賦值,book1也指向了與book2一樣的內(nèi)存區(qū)域,這時(shí)無(wú)論是對(duì)book1 還是book2 進(jìn)行操作影響的都是同一塊內(nèi)存區(qū)域了。這也就是為什么后面的輸出都是一樣的原因了。另外book1原先開(kāi)辟的內(nèi)存空間由于沒(méi)有使用,JVM的垃圾回收機(jī)制會(huì)對(duì)其進(jìn)行處理,將這些不用的內(nèi)存空間進(jìn)行釋放。

關(guān)于如何在Java中引用數(shù)據(jù)類型問(wèn)題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒(méi)有解開(kāi),可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識(shí)。


網(wǎng)站題目:如何在Java中引用數(shù)據(jù)類型
本文路徑:http://weahome.cn/article/giejdh.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部