亚洲AV乱码一区二区三区女同,欧洲在线免费高清在线a,中文字幕丝袜四区,老少配老妇熟女中文高清

<s id="38axe"><nobr id="38axe"></nobr></s><abbr id="38axe"><u id="38axe"></u></abbr>

<sup id="38axe"></sup>
    <acronym id="38axe"></acronym>
  • <s id="38axe"><abbr id="38axe"><ins id="38axe"></ins></abbr></s>
    
    
        <s id="38axe"></s>

        2006年11月軟件設(shè)計(jì)師下午試題[7]

        軟件設(shè)計(jì)師 責(zé)任編輯:yz888520 2008-08-06

        添加老師微信

        備考咨詢

        加我微信

        摘要:試題七(共15分)閱讀以下說(shuō)明以及Java程序,將應(yīng)填入(n)處的字句寫(xiě)在答題紙的對(duì)應(yīng)欄內(nèi)。[說(shuō)明]傳輸門(mén)是傳輸系統(tǒng)中的重要裝置。傳輸門(mén)具有Open(打開(kāi))、Closed(關(guān)閉)、Opening(正在打開(kāi))、StayOpen(保持打開(kāi))、Closing(正在關(guān)閉)五種狀態(tài)。觸發(fā)狀態(tài)的轉(zhuǎn)換事件有click、complete和timeout三種。事件與其相應(yīng)的狀態(tài)轉(zhuǎn)換如圖7-1所示。

        試題七(共15分)
        閱讀以下說(shuō)明以及Java程序,將應(yīng)填入 (n) 處的字句寫(xiě)在答題紙的對(duì)應(yīng)欄內(nèi)。
        [說(shuō)明]
        傳輸門(mén)是傳輸系統(tǒng)中的重要裝置。傳輸門(mén)具有Open(打開(kāi))、Closed(關(guān)閉)、Opening(正在打開(kāi))、StayOpen(保持打開(kāi))、Closing(正在關(guān)閉)五種狀態(tài)。觸發(fā)狀態(tài)的轉(zhuǎn)換事件有click、 complete和timeout三種。事件與其相應(yīng)的狀態(tài)轉(zhuǎn)換如圖7-1所示。



         下面的[Java代碼1]與[Java代碼2]分別用兩種不同的設(shè)計(jì)思路對(duì)傳輸門(mén)進(jìn)行狀態(tài)模擬,請(qǐng)?zhí)钛a(bǔ)代碼中的空缺。
        [Java代碼1]
        public class Door{
        public static final int CLOSED = 1; public static final int OPENING = 2:
        public static final int OPEN = 3: public static final int CLOSING = 4:
        public static final int STAYOPEN = 5; private int state = CLOSED:
        //定義狀態(tài)變量,用不同的整數(shù)表示不同狀態(tài)

        private void setState(int state){this.state = state;}//設(shè)置傳輸門(mén)當(dāng)前狀態(tài)
        public void getState(){
        //此處代碼省略,本方法輸出狀態(tài)字符串,
        //例如,當(dāng)前狀態(tài)為CLOSED時(shí),輸出字符串為"CLOSED"
        }
        public void click(){//發(fā)生click事件時(shí)進(jìn)行狀態(tài)轉(zhuǎn)換
        if( (1) )setState(OPENING);
        else if( (2) )setState(CLOSING);
        else if( (3) )setState(STAYOPEN);
        }
        //發(fā)生timeout事件時(shí)進(jìn)行狀態(tài)轉(zhuǎn)換
        public void timeout(){if(state == OPEN) setState(CLOSING);}
        public void complete(){//發(fā)生complete 事件時(shí)進(jìn)行狀態(tài)轉(zhuǎn)換
        if(state == OPENING) setState(OPEN);
        else if(state == CLOSING) setState(CLOSED);
        }
        public static void main (String [] args){
        Door aDoor = new Door();
        aDoor.getState();aDoor.click(); aDoor.getState(); aDoor.complete();
        aDoor.getState();aDoor.click();aDoor.getState();aDoor.clik();
        aDoor.getState();return;
        }
        }
        [Java代碼2]
        public class Door{
        public final DoorState CLOSED = new DoorClosed(this);
        public final DoorState OPENING = new DoorOpening(this);
        public final DoorState OPEN = new DoorOpen(this);
        public final DoorState CLOSING = new DoorClosing(this);
        public final DoorState STAYOPEN = new DoorStay0pen(this);
        private DoorState state = CLOSED;

        //設(shè)置傳輸門(mén)當(dāng)前狀態(tài)
        public void setState(DoorState state){this.state = state;}
        public void getState(){//根據(jù)當(dāng)前狀態(tài)輸出對(duì)應(yīng)的狀態(tài)字符串
        System.out?println(state.getClass().getName());
        }
        public void click(){ (4) ;}//發(fā)生click事件時(shí)進(jìn)行狀態(tài)轉(zhuǎn)換
        public void timeout(){ (5) ;}//發(fā)生timeout事件時(shí)進(jìn)行狀態(tài)轉(zhuǎn)換
        public void complete(){ (6) ;}//發(fā)生complete事件時(shí)進(jìn)行狀態(tài)轉(zhuǎn)換

        public static void main (String[] args){
        Door aDoor = new Door():
        aDoor.getState();aDoor. click();aDoor.getState();aDoor.complete();
        aDoor.getstate();aDoor.timeout();aDoor.getState();return;
        }
        public abstract class DoorState{//定義所有狀態(tài)類(lèi)的基類(lèi)
        protected Door door:
        public DoorState(Door door){this.door = door;}
        public void click(){}
        public void complete(){}
        public void timeout(){}
        }
        class DoorClosed extends DoorState{//定義一個(gè)基本的Closed狀態(tài)
        public DoorClosed(Door door){super(door);}
        public void click(){ (7) ;}
        //該類(lèi)定義的其余代碼省略
        }
        //其余代碼省略
         
        [答案討論]

        [1]  [2]  [3]  [4]  [5]  [6]  [7]  

        溫馨提示:因考試政策、內(nèi)容不斷變化與調(diào)整,本網(wǎng)站提供的以上信息僅供參考,如有異議,請(qǐng)考生以權(quán)威部門(mén)公布的內(nèi)容為準(zhǔn)!

        軟考備考資料免費(fèi)領(lǐng)取

        去領(lǐng)取

        !
        咨詢?cè)诰€老師!