從屌絲到架構(gòu)師的飛越(入門篇)-自定義數(shù)據(jù)類型

一纱意、介紹

這里我們介紹的自定義數(shù)據(jù)類型就是定義我們JAVA中的類喻频,類是我們JAVA編程的基本的單位,寫好了類寨典,就相當(dāng)于學(xué)好JAVA的基本構(gòu)成耀盗。

二想虎、內(nèi)容

1.1 自定義數(shù)據(jù)類型概述

任何編程語言都需要將現(xiàn)實(shí)生活中的事物抽象成代碼。這時(shí)可以使用自定義的數(shù)據(jù)類型(類)來描述(映射)現(xiàn)實(shí)事物叛拷。

類就是數(shù)據(jù)類型舌厨,與之前學(xué)習(xí)的所有引用數(shù)據(jù)類型相同,自定義類也是一種數(shù)據(jù)類型忿薇。只是自定義類型并非Java為我們預(yù)先提供好的類型裙椭,而是我們自己定義的一種引用數(shù)據(jù)類型用來描述一個(gè)事物。

1.2 類的定義及使用

1.2.1 類的定義格式及使用格式

代碼映射現(xiàn)實(shí)事物的過程就是定義類的過程署浩。每個(gè)成員變量與要描述的事物屬性變量名對應(yīng)揉燃,數(shù)據(jù)類型對應(yīng)。

這時(shí)筋栋,我們便可以將一個(gè)事物的多個(gè)屬性值組織成一個(gè)完整的事物作為操作單位炊汤。

a) 類的定義格式

創(chuàng)建文件,與類名相同

public class 類名{

數(shù)據(jù)類型? 屬性名稱;

數(shù)據(jù)類型? 屬性名稱2婿崭;

}

如:

class Person {

String? name;

int? age;

}

b) 類的使用格式

類在定義出來之后拨拓,必須被使用,不使用雖然沒有語法錯(cuò)誤氓栈,但是沒有意義渣磷。

自定義類的使用方式與以往的引用數(shù)據(jù)類型完全相同,如下:

導(dǎo)包:我們將所有的類放到同一個(gè)文件夾下授瘦,可以避免導(dǎo)包醋界。

創(chuàng)建對象:數(shù)據(jù)類型? 變量名 = new 數(shù)據(jù)類型();

調(diào)用方法: 由于我們定義的類型并不完整,所以現(xiàn)在不涉及調(diào)用方法提完,而是訪問屬性訪問屬性:對象名. 屬性名 (這是當(dāng)前的方式形纺,后期會(huì)采取調(diào)用方法的方式替代掉直接訪問的方式來完成對屬性的訪問。)

如:

Person p = new Person();

p.name? =? “AngelaBaby”;

p.age = 18;

Person p2 = new Person();

p2.name? =? “黃曉明”;

p2.age = 36;

System.out.println(p.name);? //打印結(jié)果:AngelaBaby

System.out.println(p.age);? //打印結(jié)果:18

System.out.println(p2.name); //打印結(jié)果:黃曉明

System.out.println(p2.age);? //打印結(jié)果:36

1.2.2 自定義類型練習(xí)

我們可以將現(xiàn)實(shí)生活中的任何事物抽象成一個(gè)類徒欣,請自定義并使用一種數(shù)據(jù)類型逐样。如人類、動(dòng)物類打肝、汽車類脂新、衣服類、玩具類等粗梭。

/*

自定義類型 人類

屬性

姓名? String

年齡? int

性別? String

身高? double

是否熱愛java? boolean

*/

public class Person

{

//姓名

String name;

//年齡

int age;

//性別

String sex;

//身高

double height;

//是否喜歡java

boolean isLoveJava;

}

/*

測試自定義類型 Person類

注意事項(xiàng)

自定義類就是引用數(shù)據(jù)類型 每個(gè)對象的屬性都有默認(rèn)值

static修飾的方法 只能調(diào)用static修飾的方法或成員變量

指的是

在同一個(gè)類中直接訪問時(shí)争便,必須使用static修飾

如果通過對象名.方法名 或者 對象名.屬性名的方式訪問 不需要static飾

*/

public class Test_Person{

public static void main(String[] args){

Person? p = new Person();

p.name = "柳巖";

p.age = 38;

p.sex = "女";

p.height = 1.65;

p.isLoveJava = true;

System.out.println("姓名:"+p.name);

System.out.println("年齡:"+p.age);

System.out.println("性別:"+p.sex);

System.out.println("身高:"+p.height);

System.out.println("是否喜歡java:"+p.isLoveJava);?

System.out.println("-------------------");

Person p2 = new Person();

System.out.println(p2);

System.out.println(p2.name);

System.out.println("年齡:"+p2.age);

System.out.println("性別:"+p2.sex);

System.out.println("身高:"+p2.height);

System.out.println("是否喜歡java:"+p2.isLoveJava);

}

}

/*

自定義數(shù)據(jù)類型? 商品類

商品屬性

商品編號? String

商品名稱? String?

商品單價(jià)? double

商品數(shù)量? int

商品金額? double

創(chuàng)建文件,與類名相同

public class 類名{

數(shù)據(jù)類型? 屬性名稱断医;

數(shù)據(jù)類型? 屬性名稱2滞乙;

}

*/

public class GoodsItem

{

//商品編號

String id;

//商品名稱

String name;

//商品單價(jià)

double price;

//商品數(shù)量

int number;

//商品金額

double money;

}

/*

測試類? 測試自定義類型商品類

導(dǎo)包 測試類 與 被測試類在同一個(gè)文件夾下 不需要導(dǎo)包

創(chuàng)建對象 數(shù)據(jù)類型 變量名 = new 數(shù)據(jù)類型();

調(diào)用方法 沒有方法不調(diào)用

訪問屬性

變量名.屬性名? 獲取值/賦值

*/

public class Test_GoodsItem{

public static void main(String[] args)

{

GoodsItem gs = new GoodsItem();

gs.id = "01";

gs.name = "少林寺酥餅核桃";

gs.price = 15.50;

gs.number = 22;

gs.money= gs.price * gs.number;

String id= gs.id;

System.out.println(id);

System.out.println(gs.money+20.01);

}

}

1.2.3 自定義類型注意事項(xiàng)與內(nèi)存圖

這里完成的是不完整的自定義類型,更為完整的自定義類定義方式會(huì)在面向?qū)ο髸r(shí)詳細(xì)解釋鉴嗤。

與引用類型數(shù)組類似斩启,同為引用類型的自定義類型直接打印對象的引用變量,結(jié)果為對象地址值躬窜,這里可以通過內(nèi)存圖簡單解釋浇垦。


?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市荣挨,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌朴摊,老刑警劉巖默垄,帶你破解...
    沈念sama閱讀 216,744評論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異甚纲,居然都是意外死亡口锭,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,505評論 3 392
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來鹃操,“玉大人韭寸,你說我怎么就攤上這事【0” “怎么了恩伺?”我有些...
    開封第一講書人閱讀 163,105評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長椰拒。 經(jīng)常有香客問我晶渠,道長,這世上最難降的妖魔是什么燃观? 我笑而不...
    開封第一講書人閱讀 58,242評論 1 292
  • 正文 為了忘掉前任褒脯,我火速辦了婚禮,結(jié)果婚禮上缆毁,老公的妹妹穿的比我還像新娘番川。我一直安慰自己,他們只是感情好脊框,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,269評論 6 389
  • 文/花漫 我一把揭開白布颁督。 她就那樣靜靜地躺著,像睡著了一般缚陷。 火紅的嫁衣襯著肌膚如雪适篙。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,215評論 1 299
  • 那天箫爷,我揣著相機(jī)與錄音嚷节,去河邊找鬼。 笑死虎锚,一個(gè)胖子當(dāng)著我的面吹牛硫痰,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播窜护,決...
    沈念sama閱讀 40,096評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼效斑,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了柱徙?” 一聲冷哼從身側(cè)響起缓屠,我...
    開封第一講書人閱讀 38,939評論 0 274
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎护侮,沒想到半個(gè)月后敌完,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,354評論 1 311
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡羊初,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,573評論 2 333
  • 正文 我和宋清朗相戀三年滨溉,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,745評論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡晦攒,死狀恐怖闽撤,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情脯颜,我是刑警寧澤哟旗,帶...
    沈念sama閱讀 35,448評論 5 344
  • 正文 年R本政府宣布,位于F島的核電站伐脖,受9級特大地震影響热幔,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜讼庇,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,048評論 3 327
  • 文/蒙蒙 一绎巨、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧蠕啄,春花似錦场勤、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,683評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至哈街,卻和暖如春留瞳,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背骚秦。 一陣腳步聲響...
    開封第一講書人閱讀 32,838評論 1 269
  • 我被黑心中介騙來泰國打工她倘, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人作箍。 一個(gè)月前我還...
    沈念sama閱讀 47,776評論 2 369
  • 正文 我出身青樓硬梁,卻偏偏與公主長得像,于是被迫代替她去往敵國和親胞得。 傳聞我的和親對象是個(gè)殘疾皇子荧止,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,652評論 2 354

推薦閱讀更多精彩內(nèi)容