Java數(shù)據(jù)類(lèi)型可以分為兩個(gè)不同的類(lèi)別:原始和非原始。原始數(shù)據(jù)類(lèi)型是非原始數(shù)據(jù)類(lèi)型的構(gòu)建塊,并存儲(chǔ)離散和不可約值。示例包括byte、short、int、long、float、double、Boolean和char。非原始數(shù)據(jù)類(lèi)型是程序員可以創(chuàng)建或修改的對(duì)象。例如,Java中的所有類(lèi)都是非原始數(shù)據(jù)類(lèi)型,其他非原始數(shù)據(jù)類(lèi)型都內(nèi)置在該語(yǔ)言中,其中包括數(shù)組和字符串。對(duì)Java感興趣的同學(xué)可以參加java培訓(xùn),可以獲得快速有效的學(xué)習(xí)。
Java中的原始數(shù)據(jù)類(lèi)型與非原始數(shù)據(jù)類(lèi)型
Java中的原始數(shù)據(jù)類(lèi)型和非原始數(shù)據(jù)類(lèi)型之間有幾個(gè)顯著的區(qū)別。首先,非原始數(shù)據(jù)類(lèi)型也稱(chēng)為引用類(lèi)型,因?yàn)樗鼈円脤?duì)象。因此,非原始數(shù)據(jù)類(lèi)型的變量存儲(chǔ)對(duì)其數(shù)據(jù)的引用,而原始類(lèi)型的變量直接包含其數(shù)據(jù)。由于每個(gè)變量都有自己的數(shù)據(jù)副本,因此對(duì)一個(gè)變量的操作不可能影響另一個(gè)變量。同時(shí),通過(guò)引用類(lèi)型,兩個(gè)變量可以引用同一個(gè)對(duì)象;因此,對(duì)一個(gè)變量的操作會(huì)影響另一個(gè)變量引用的對(duì)象。
原始數(shù)據(jù)類(lèi)型和非原始數(shù)據(jù)類(lèi)型之間的其他差異包括:
原始類(lèi)型總是預(yù)定義的,而非原始類(lèi)型可以由程序員創(chuàng)建。
非原始類(lèi)型可以定義方法,而原始類(lèi)型不能。
原始類(lèi)型始終具有值,而非原始類(lèi)型可以為空。
原始類(lèi)型以小寫(xiě)字母開(kāi)頭,而非原始類(lèi)型則以大寫(xiě)字母開(kāi)頭,例如int與Integer。
原始類(lèi)型的大小取決于數(shù)據(jù)類(lèi)型,而非原始類(lèi)型始終具有相同的大小。
Java中的非原始數(shù)據(jù)類(lèi)型
Java中有五種非原始數(shù)據(jù)類(lèi)型,包括內(nèi)置的字符串和數(shù)組、自定義類(lèi)和接口,以及特殊的Object類(lèi),它是Java中所有類(lèi)的超類(lèi)。因此,Java中的每個(gè)類(lèi)都是非原始數(shù)據(jù)類(lèi)型,Object是一個(gè)類(lèi),這意味著它也可以作為數(shù)據(jù)類(lèi)型。想學(xué)習(xí)java技術(shù)的同學(xué),不妨報(bào)個(gè)Java培訓(xùn)班,有明確清晰的學(xué)習(xí)路線,理論知識(shí)+實(shí)戰(zhàn)操作,可以獲得快速提升。
Java中的字符串類(lèi)
Java中的字符串是以這樣一種方式設(shè)計(jì)的,即它們可以在單個(gè)變量中保存一系列字符,而不像字符數(shù)組中有單獨(dú)的字符實(shí)體。在Java中,不需要以空字符結(jié)束字符串,這在C或C++等舊語(yǔ)言中是強(qiáng)制性的。
Java中的數(shù)組類(lèi)
數(shù)組用于以連續(xù)序列存儲(chǔ)相同數(shù)據(jù)類(lèi)型的元素。它們不是預(yù)定義的,因此開(kāi)發(fā)人員必須在引用它們之前聲明和初始化數(shù)組。然后通過(guò)索引編號(hào)(從0開(kāi)始)訪問(wèn)元素。因此,Java中的數(shù)組通常被稱(chēng)為零基數(shù)組。
數(shù)組的內(nèi)存是動(dòng)態(tài)分配的,其大小可以由程序員在聲明時(shí)使用整數(shù)值(而不是長(zhǎng)或短)來(lái)設(shè)置。
Java中的類(lèi)
Java中的類(lèi)是一種用戶(hù)定義的數(shù)據(jù)類(lèi)型,它充當(dāng)數(shù)據(jù)的模板,由成員變量和方法組成。類(lèi)的具體實(shí)現(xiàn)稱(chēng)為實(shí)例,它可以訪問(wèn)成員變量和方法。參加java培訓(xùn)是入門(mén)學(xué)習(xí)的最佳選擇,有經(jīng)驗(yàn)豐富的專(zhuān)業(yè)老師面授指導(dǎo)教學(xué),通過(guò)理論結(jié)合實(shí)戰(zhàn)的方式教授java基礎(chǔ)知識(shí),幫助你更好的理解與運(yùn)用java。
在下面的示例中,我們有兩個(gè)類(lèi):Abacus和ClassExample。后者包含main()方法;在Abacus類(lèi)中,你將發(fā)現(xiàn):
PI常數(shù)。它被定義為靜態(tài)的,因此可以在不實(shí)例化類(lèi)的情況下訪問(wèn)它。
執(zhí)行加法和減法運(yùn)算的add()和sub()方法。
使用new關(guān)鍵字創(chuàng)建Abacus類(lèi)時(shí)將調(diào)用的默認(rèn)構(gòu)造函數(shù)。
Java中的接口
接口與類(lèi)相似,只是其方法默認(rèn)是抽象的,即它們沒(méi)有主體。由于接口只有最終變量和方法聲明,因此它也可以稱(chēng)為完全抽象類(lèi)。它充當(dāng)一個(gè)契約,該契約規(guī)定,通過(guò)實(shí)現(xiàn)接口,類(lèi)必須實(shí)現(xiàn)接口定義的所有方法。但是,如果類(lèi)被聲明為抽象的,則它不必實(shí)現(xiàn)所有的類(lèi)方法,但它的子類(lèi)可以實(shí)現(xiàn)。
關(guān)于Java非原始數(shù)據(jù)類(lèi)型的最后思考
Java的非原始數(shù)據(jù)類(lèi)型,包括對(duì)象、類(lèi)、接口、字符串和數(shù)組。與原始類(lèi)型相比,非原始類(lèi)型要復(fù)雜得多,它包含了面向?qū)ο缶幊蹋?/span>OOP)的四個(gè)主要構(gòu)建塊,即:多態(tài)性、封裝、抽象和繼承。想學(xué)習(xí)java更多技能,建議參加java培訓(xùn),課程實(shí)時(shí)更新,緊跟市場(chǎng)和企業(yè),讓你學(xué)到最新的java技能,提高市場(chǎng)競(jìng)爭(zhēng)力。