问题 单项选择题

创造出一种全新的字体“瘦金体”的是谁().

A、赵匡胤

B、赵曙

C、赵佶

D、赵构

答案

参考答案:C

填空题

阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。

[说明]

某大型商场内安装了多个简易的纸巾售卖机,自动出售2元钱一包的纸巾,且每次仅售出一包纸巾。纸巾售卖机的状态图如图6-1所示。

采用状态(State)模式来实现该纸巾售卖机,得到如图6-2所示的类图。其中类State为抽象类,定义了投币、退币、出纸巾等方法接口。类SoldState、SoldOutState、NoQuarterState和HasQuarterState分别对应图6-1中纸巾售卖机的4种状态:售出纸巾、纸巾售完、没有投币、有2元钱。

[Java代码]

import java.util.*;

interface State

public void insertQuarter(); //投币

public void ejectQuarter(); //退币

public void turnCrank(); //按下“出纸巾”按钮

public void dispense(); //出纸巾

class TissueMachine

(1) soldOutStater noQuarterState, hasQuarterState, soldState,state;

state - soldOutState;

int count=0; //纸巾数

public TissueMachine (int numbers) /*实现代码省略*/

public State getHasQuarterState() return hasQuarterState;

public State getNoQuarterState() return noQuarterState;

public State getSoldState() return soldState;

public State getSoldOutState() return soldOutState;

public int getCount() return count;

//其余代码省略

class NoQuarterState implements State

TissueMachine tissueMachine;

public void insertQuarter()

tissueMachine. setState( (2) );

//构造方法以及其余代码省略

class HasQuarterState implements State

TissueMachine tissueMachine;

public void ejectQuarter()

tissueMachine.setState( (3) );

//构造方法以及其余代码省略

class SoldState implements State

TissueMachine tissueMachine;

public void dispense()

if(tissueMachine .getCount()>0)

tissueMachine.setState( (4) );

else

tissueMachine.setState( (5) );

(4)处应填()。

单项选择题