专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »Java教程 » 抽象类的应用:抽象类应用 »正文

抽象类的应用:抽象类应用

来源: 发布时间:星期一, 2009年2月23日 浏览:0次 评论:0
为了加深对抽象类了解和应用方式来举个例子介绍说明抽象类在范例中定义了个简单比大小游戏抽象类JAVA中文站社区门户gD'Ky T/w
public abstract AbstractGuessGame{
^y P!~-S{@0T   private number;
|0@$Y&I!p.s$O   JAVA中文站社区门户k(PXJ[r
   public void Number( number){JAVA中文站社区门户-A niTPz N7@2zBT
      this.number=number;JAVA中文站社区门户@)e\se&T C0gX{9i;d
   }
rZ7BGF:bKOxS'P   public void start{
R6e3q6TtQY8I I      showMessage("欢迎");JAVA中文站社区门户hF]5I j
       guess=0;JAVA中文站社区门户3ZY2w^ Z4EE$ByoZ
      do{JAVA中文站社区门户8wG1Q&q#B&X
        guess=getUserInput;JAVA中文站社区门户W f-vS;X&jLo{
        (guess>number){JAVA中文站社区门户AC+x7W#p f.|
           showMessage("输入数字较小");
Z#y5R6i H8w N&E0D        }JAVA中文站社区门户g+dc?F3CB!S2n L$?"C
         (guess<number){JAVA中文站社区门户i#Yn C+j1xkN Y7Ww.Q
           showMessage("输入数字较大");
Z'df)D_,vN        }JAVA中文站社区门户d"W @'_f^.r Q [.^BQ
        {JAVA中文站社区门户cXO/kS@U9i
           showMessage("猜中了"):JAVA中文站社区门户wDt"{o$W
        }
x(ut-_@RJ#`      } while(guess !=number);JAVA中文站社区门户W}*hh3q^-O
   }JAVA中文站社区门户.J }5L6xvZ;m
   protected asbtract void showMessage(String message);JAVA中文站社区门户$s+u.B2Li
   protected abstract getUserInput;
!N9wA"C9c0QV}
&m{s,Ui.@ h这是个抽象类在类中定义了start思路方法其中先实现不大小游戏基本规则然而并不实现如何取得使用者输入和信息显示方式只先定义了抽象思路方法showMessage和getUserInput使用AbstractGuessGame类办法是扩展它并实现其中抽象思路方法例如可以实现个简单文字接口游戏类如范例所示:JAVA中文站社区门户 |^!Cg-k
import java.util.Scanner;
H%W;X;D|)zpublic TextModeGame extends AbstractGuessGame{JAVA中文站社区门户]CC5C+LpJ,X
   private Scanner scanner;JAVA中文站社区门户e0Fq:^:c"B-Yu
   public TextModeGame{JAVA中文站社区门户4hu~ HD[R Fz1|
      scanner= Scanner(.in);
in*eM `U$k6w   }JAVA中文站社区门户Vi@ K#b8A7}j
   protected void showMessage(String message){JAVA中文站社区门户f"J u$u({M
      for( i=0;i<message.length*2;i){JAVA中文站社区门户:D*{8QR.b5Tk7w
         .out.pr("*");JAVA中文站社区门户'L%M+THI&f9t
      }
)k1k7L[[#Jo2?      .out.prln("\n"+message);JAVA中文站社区门户p-x)W])X#T F;h
      for( i=0;i<message.length*2;i){JAVA中文站社区门户f tGc j@q }
         .out.pr("*");JAVA中文站社区门户2a-Y p v Gs1G
      }
Z#z b*BX5O,O   }
.D6H k(\ H!U   protected getUseInput{JAVA中文站社区门户5[(j bz9u
      .out.pr("\n输入数字:");JAVA中文站社区门户[;iGS,J!g)Fi0x
       scanner.nextInt;
!p6m1]tf dP3T   }JAVA中文站社区门户 j#Wn$`;BnZ
}JAVA中文站社区门户 L5`;h-sTvJ"Q lX
以下是启动游戏示范类:JAVA中文站社区门户5}5{Lq"~S;[
public GuessGameDemo{
"i;Hu1V-v Q6dda   public void (String args){
0R?!j!Of      AbstractGuessGame guessGame= TextModeGame;JAVA中文站社区门户+i]Z"d)cA
      guessGame.Number(50);
Q+tFwFp      guessGame.start;
Oo dSE   }JAVA中文站社区门户%{}e ?Q'nn
}
R r WG$j5y!B执行结果:
;R f)y2vxA k****JAVA中文站社区门户|&t cxU,aGj
欢迎
tH cJBQ }****JAVA中文站社区门户/q#_1aJ)z4kLM&s*wW
输入数字:10
^,U\k"U-~**************JAVA中文站社区门户VaA!B+N!c;S)E
输入数字较小JAVA中文站社区门户 @ n2l3r4|\ZQ
**************JAVA中文站社区门户u*sc#mE[
输入数字:50JAVA中文站社区门户*tt'Fe3Iv ^!D
******

0

相关文章

读者评论

发表评论

  • 昵称:
  • 内容: