面向?qū)ο蟮某绦蛟O(shè)計(jì)過程中纬凤,有兩個(gè)重要概念:類(Class)和對(duì)象(Object)
Java語言中定義類的簡(jiǎn)單語法:
[修飾符] class 類名{零到多個(gè)成員變量;零到多個(gè)構(gòu)造器;零到多個(gè)方法;}
舉個(gè)栗子:
Java語言中定義對(duì)象的簡(jiǎn)單語法:
類名 標(biāo)識(shí)符 = new 類名();
舉個(gè)栗子:
這里的例子是合起來的迫卢,上半部分是自定義一個(gè)類钉蒲,下半部分通過自定義的類構(gòu)建一個(gè)對(duì)象a,對(duì)象a可以引用自定義類A里面的方法
最后輸出:我是好孩子鼎俘!
對(duì)于類來說脯倚,可以包含三種最常見的成員:成員變量、構(gòu)造器和方法窝趣。成員之間可以互相調(diào)用,成員之間的順序沒有影響训柴,但是哑舒,static修飾的成員不能訪問沒有static修飾的成員。
成員變量
定義成員變量的語法:[修飾符] 類型 成員變量名 [= 默認(rèn)值(可以省略)]
修飾符:有public幻馁、protected洗鸵、private越锈、static、final膘滨,前面三個(gè)修飾符只能出現(xiàn)一個(gè)甘凭,但是可以和static、final組合起來修飾成員變量
類型:Java語言允許的任何數(shù)據(jù)類型
成員變量名:一個(gè)合法的標(biāo)識(shí)符
默認(rèn)值:可以指定一個(gè)默認(rèn)值火邓,或者不填放空
舉個(gè)栗子:
值得一提的是丹弱,假如在定義成員變量的時(shí)候使用了static,那么這個(gè)成員變量就叫做靜態(tài)成員變量铲咨,又叫做類變量躲胳;而沒有使用static的成員變量就叫做非靜態(tài)成員變量,又叫作實(shí)例變量纤勒。靜態(tài)變量不能訪問非靜態(tài)變量坯苹。
當(dāng)然,如果該成員變量是在方法里定義的摇天,那么這個(gè)成員變量就叫做局部變量
類變量粹湃,也就是類成員變量,它作為類本身的一個(gè)成員泉坐,與類共存亡
實(shí)例變量再芋,也就是實(shí)例成員變量,它作為實(shí)例的一個(gè)成員坚冀,與實(shí)例共存亡
只要類存在,程序就可以訪問該類的類變量: (語法)類.類變量
只要實(shí)例存在鉴逞,程序就可以訪問該實(shí)例的實(shí)例變量: (語法)實(shí)例.實(shí)例變量
類變量也可以讓該類的實(shí)例來訪問: (語法)實(shí)例.類變量
舉個(gè)栗子:
值得注意的是记某,實(shí)例變量的賦值,只對(duì)本身有效构捡,而類變量的賦值液南,將影響到整個(gè)程序,所以這邊得到結(jié)果:
構(gòu)造器
定義構(gòu)造器的語法:[修飾符] 類名(形參列表(可以省略勾徽,省略了之后就是默認(rèn)構(gòu)造器)){零條到多條可執(zhí)行語句}
修飾符:可以省略滑凉,也可以是public、protected喘帚、private其中之一
類名:就是類的名字
形參列表:由零組到多組“類型 形參名”組合而成畅姊,類型和形參名之間用空格隔開,形參之間用逗號(hào)“吹由,”隔開
舉個(gè)栗子:
當(dāng)然若未,如果構(gòu)造器的形參部分省略了,那么這個(gè)構(gòu)造器就會(huì)變成默認(rèn)構(gòu)造器
默認(rèn)構(gòu)造器內(nèi)什么東西都沒有倾鲫,如果用使用默認(rèn)構(gòu)造器的類來創(chuàng)建對(duì)象的話
那么最后輸出的結(jié)果將是Java系統(tǒng)自帶的默認(rèn)值0和null
方法
定義方法的語法:[修飾符] 方法返回值類型 方法名(形參列表){零條到多條可執(zhí)行語句}
修飾符:public粗合、protected萍嬉、private、static隙疚、final壤追、abstract。前面三個(gè)最多只能出現(xiàn)一個(gè)供屉,abstarct和final最多只能出現(xiàn)一個(gè)行冰,它們倆可以和static組合起來修飾方法
方法返回值類型:Java語言允許的任何數(shù)據(jù)類型
方法名:一個(gè)合法的標(biāo)識(shí)符
形參列表:由零組到多組“類型 形參名”組合而成,類型和形參名之間用空格隔開贯卦,形參之間用逗號(hào)“资柔,”隔開
舉個(gè)栗子:
這里定義了三個(gè)方法,主方法中可以創(chuàng)建對(duì)象撵割,然后調(diào)用方法就可以了
如果有幫助請(qǐng)記得收藏贿堰,如果有錯(cuò)誤請(qǐng)幫忙指出來!