第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

如何設(shè)計(jì)類與類之間的關(guān)系

如何設(shè)計(jì)類與類之間的關(guān)系

瀟瀟雨雨 2019-04-19 16:11:29
如何設(shè)計(jì)類與類之間的關(guān)系:比如A類(人類)B類(撲克),A類(人類)C類(汽車),A類(人類)D類(椅子)像這種同一個(gè)類與其他不同類之間又有關(guān)聯(lián),怎么設(shè)計(jì)呢?
查看完整描述

2 回答

?
繁花如伊

TA貢獻(xiàn)2012條經(jīng)驗(yàn) 獲得超12個(gè)贊

其實(shí)分類,主要還是要看你準(zhǔn)備抽象到什么地步。
舉個(gè)例子,問(wèn)題說(shuō)道了"玩法","操作","使用",他們都可以抽象成“方法”,只不過(guò)是不同的應(yīng)用而已
"撲克","汽車","椅子",這些都是需要用到的東西,把它們抽象成“物件”
下面為了方便理解我用的名字基本都是中文,其實(shí)學(xué)OO的概念,不要把它學(xué)死,下邊的使用只是一種方式,從不同的角度去看去抽象,能寫(xiě)出各種各樣的東西。
比如說(shuō):下邊我把怎么使用這個(gè)東西的方法寫(xiě)在了“人類”里,但你想想,也許應(yīng)該是“人類”拿到了這樣?xùn)|西就會(huì)用了而不是我告訴“人類”怎么用,又或者說(shuō)這個(gè)東西它能這樣用,而不是人類只會(huì)這么用。
理解的是OO的概念,幫助你將來(lái)去更有效更便利的寫(xiě)code就可以了。
publicclass物件{
privateString名字;
public物件(String名字){
this.名字=名字;
}
publicStringget名字(){
return名字;
}
publicvoidset名字(String名字){
this.名字=名字;
}
}
publicclass方法{
privateString名字;
public方法(String名字){
this.名字=名字;
}
publicStringplay(){
return名字;
}
publicStringget名字(){
return名字;
}
publicvoidset名字(String名字){
this.名字=名字;
}
}
publicclass人類{
privateString名字;
private物件東西;
private方法使用;
public人類(String名字,物件東西,方法使用){
this.名字=名字;
this.東西=東西;
this.使用=使用;
}
publicvoidapply(){
System.out.println(get名字()+""+get使用().get名字()+""+get東西().get名字());
}
public物件get東西(){
return東西;
}
publicvoidset東西(物件東西){
this.東西=東西;
}
public方法get使用(){
return使用;
}
publicvoidset使用(方法使用){
this.使用=使用;
}
publicStringget名字(){
return名字;
}
publicvoidset名字(String名字){
this.名字=名字;
}
}
publicclassTest{
publicstaticvoidmain(String[]args){
人類a=new人類("A",new物件("撲克"),new方法("玩法"));
a.apply();
人類b=new人類("B",new物件("汽車"),new方法("操作"));
b.apply();
人類c=new人類("C",new物件("椅子"),new方法("使用"));
c.apply();
}
}
                            
查看完整回答
反對(duì) 回復(fù) 2019-04-19
?
慕尼黑的夜晚無(wú)繁華

TA貢獻(xiàn)1864條經(jīng)驗(yàn) 獲得超6個(gè)贊

定義一個(gè)接口
javapublicinterfaceUse{
publicvoiduseBy(Personp);
}
為BCD定義一個(gè)父類,實(shí)現(xiàn)接口Use
javapublicclassItemimplementsUse{
@Override
publicvoiduseBy(Personp){
//dosomething
}
}
BCD類繼承類Item,并覆蓋useBy方法(或者重載?比如撲克有多人玩)
面向?qū)ο髮W(xué)的不好,拋磚引玉了~
                            
查看完整回答
反對(duì) 回復(fù) 2019-04-19
  • 2 回答
  • 0 關(guān)注
  • 399 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)