詳解java自定義類
引用數(shù)據(jù)類型(類)
引用數(shù)據(jù)類型分類
提到引用數(shù)據(jù)類型(類),其實(shí)我們對(duì)它并不陌生,之前使用過的Scanner類、Random類。
我們可以把類的類型為兩種:
第一種,Java為我們提供好的類,如Scanner類,Random類等,這些已存在的類中包含了很多的方法與屬性,可供我們使用。
第二種,我們自己創(chuàng)建的類,按照類的定義標(biāo)準(zhǔn),可以在類中包含多個(gè)方法與屬性,來供我們使用。
這里我們主要介紹第二種情況的簡(jiǎn)單使用。
自定義數(shù)據(jù)類型概述
我們?cè)贘ava中,將現(xiàn)實(shí)生活中的事物抽象成了代碼。這時(shí),我們可以使用自定義的數(shù)據(jù)類型(類)來描述(映射)現(xiàn)實(shí)生活中的事物。
類,它是引用數(shù)據(jù)類型,與之前學(xué)習(xí)的所有引用數(shù)據(jù)類型相同,自定義類也是一種數(shù)據(jù)類型。只是自定義類型并非Java為我們預(yù)先提供好的類型,而是我們自己定義的一種引用數(shù)據(jù)類型用來描述一個(gè)事物。
類的定義與使用
java代碼映射成現(xiàn)實(shí)事物的過程就是定義類的過程。
我們就拿一部手機(jī)進(jìn)行分析,它能用來做什么呢?它可以打電話,上網(wǎng),聊微信等,這些就是手機(jī)所提供的功能,也就是方法;手機(jī)也有它的特征,如顏色、尺寸大小、品牌型號(hào)等,這些就是手機(jī)的特征,也就是屬性。
目前,我們只關(guān)注類中的屬性.
類的定義格式
創(chuàng)建java文件,與類名相同
public class 類名{
數(shù)據(jù)類型 屬性名稱1;
數(shù)據(jù)類型 屬性名稱2;
…
}
通過類的定義格式,來進(jìn)行手機(jī)類的描述,如下所示
public class Phone {
/*
* 屬性
*/
String brand;// 品牌型號(hào)
String color;// 顏色
double size; // 尺寸大小
}
上述代碼,就是創(chuàng)建一個(gè)類的的過程,類的名稱我們給起名為Phone,類中包含了三個(gè)屬性(brand品牌型號(hào)、color顏色、size尺寸大?。?。注意,類中定義的屬性沒有個(gè)數(shù)要求。
類的使用格式
Phone類定義好后,我們就可以使用這個(gè)類了,使用方式和使用引用數(shù)據(jù)類型Scanner類相似。格式如下:
導(dǎo)包:我們將所有的類放到同一個(gè)文件夾下,可以避免導(dǎo)包。
創(chuàng)建對(duì)象:數(shù)據(jù)類型 變量名 = new 數(shù)據(jù)類型();
調(diào)用方法:目前我們定義的自定義類不涉及方法,只是屬性(自定義類中的方法部分在面向?qū)ο蟛糠种v解)
訪問屬性:變量名.屬性 (這是當(dāng)前的方式,后期會(huì)采取調(diào)用方法的方式替代掉直接訪問的方式來完成對(duì)屬性的訪問。)
當(dāng)有了Phone數(shù)據(jù)類型的變量后,我們就可以使用Phone類中的屬性了。對(duì)屬性的訪問我們來演示一下,如下所示:
public class Test {
public static void main(String[] args) {
//定義了一個(gè)Phone類型的變量p
Phone p = new Phone();
/*
* 通過p,使用Phone中的屬性
*/
//訪問p中的brand品牌屬性
p.brand = "蘋果X";
//訪問p中的color顏色屬性
p.color = "白色";
//訪問p中的size尺寸大小屬性
p.size = 6.5;
System.out.println("手機(jī)品牌為" + p.brand );
System.out.println("手機(jī)顏色為" + p.color );
System.out.println("手機(jī)尺寸大小為" + p.size );
}
}
自定義類型注意事項(xiàng)與內(nèi)存圖
上述代碼中,通過類Phone創(chuàng)建出來的變量p,它相當(dāng)于我們生活中的盒子,里面包含了它能夠使用的屬性。
通過 p.屬性名 就可以對(duì)屬性進(jìn)行操作
與引用類型數(shù)組類似,引用類型的自定義類型的變量,直接變量時(shí),結(jié)果為對(duì)象地址值,這里可以通過內(nèi)存圖簡(jiǎn)單解釋。

以上就是詳解java自定義類的詳細(xì)內(nèi)容,更多關(guān)于java自定義類的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Mybatis調(diào)用SQL?Server存儲(chǔ)過程的實(shí)現(xiàn)示例
在軟件開發(fā)過程中,經(jīng)常會(huì)使用到存儲(chǔ)過程,本文就來介紹一下Mybatis調(diào)用SQL?Server存儲(chǔ)過程的實(shí)現(xiàn)示例,具有一定的參考價(jià)值,感興趣的可以了解一下2024-01-01
maven-assembly-plugin報(bào)紅無法加載報(bào)錯(cuò):Plugin?‘maven-assembly-plugin
maven-assembly-plugin是一個(gè)常用的打包插件,但是在使用過程中經(jīng)常會(huì)遇到各種報(bào)錯(cuò),本文就來介紹一下maven-assembly-plugin報(bào)紅無法加載報(bào)錯(cuò),具有一定的參考價(jià)值2023-08-08
Java中一個(gè)線程執(zhí)行死循環(huán)有什么后果
這篇文章主要為大家詳細(xì)介紹了Java中一個(gè)線程執(zhí)行死循環(huán)有什么后果,當(dāng)一個(gè)線程在執(zhí)行死循環(huán)時(shí)會(huì)影響另外一個(gè)線程嗎,下面為大家揭曉2016-05-05
解決Nacos集群?jiǎn)?dòng)失敗:java版本問題
這篇文章主要介紹了解決Nacos集群?jiǎn)?dòng)失敗:java版本問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-06-06
Java實(shí)現(xiàn)OJ多組測(cè)試數(shù)據(jù)的輸入方法
今天小編就為大家分享一篇Java實(shí)現(xiàn)OJ多組測(cè)試數(shù)據(jù)的輸入方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-07-07
如何實(shí)現(xiàn)Java監(jiān)聽器詳解
今天帶大家了解Java監(jiān)聽器是如何實(shí)現(xiàn)的及實(shí)現(xiàn)原理是什么,文中有非常詳細(xì)的說明,對(duì)正在學(xué)習(xí)的小伙伴們很有幫助,需要的朋友可以參考下2021-06-06
Java編程調(diào)用微信接口實(shí)現(xiàn)圖文信息推送功能
這篇文章主要介紹了Java編程調(diào)用微信接口實(shí)現(xiàn)圖文信息等推送功能,涉及java微信圖文信息推送接口調(diào)用及相關(guān)文件、字符串編碼轉(zhuǎn)換相關(guān)操作技巧,需要的朋友可以參考下2017-08-08

