⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ch03s05.html

📁 优秀的java程序开发软件方式与方法,对大家开发程序的时候有指导性帮助
💻 HTML
📖 第 1 页 / 共 2 页
字号:
    [win] whileFalse: [        numinput _ WANumberInput new.        numinput addMessage:            'Guess a number [0, 100]: '.        guess _ (self call: numinput) asInteger.        (guess &lt; answer) ifTrue:             [self inform: 'Number too small.'].        (guess &gt; answer) ifTrue:             [self inform: 'Number too big.'].        (guess = answer) ifTrue:             [win _ true].].    self inform: 'Congratulations!'.</pre><p>&#29992;Java&#39118;&#26684;&#35821;&#27861;&#26469;&#20889;&#65292;&#19978;&#38754;&#30340;&#20195;&#30721;&#30456;&#24403;&#20110;&#65288;&#19979;&#21015;&#20195;&#30721;&#19981;&#31526;&#21512;&#20219;&#20309;&#35821;&#35328;&#65289;&#65306;</p><pre class="programlisting">public class WAGuessNumber extends WATask{    public void go() {        Object answer, win, guess, numinput;        answer = new Random().nextInt(100);        win = false;        while (!win) {            numinput = new WANumberInput();            numinput.addMessage(                &#8220;Guess a number [0, 100]: &#8220;);            guess = call(numinput).toInteger();            if (guess &lt; answer)                inform(&#8220;Number too small.&#8221;);            if (guess &gt; answer)                inform(&#8220;Number too big.&#8221;);            if (guess = answer)                win = true;        }        inform(&#8220;Congratulations!&#8221;);    }}</pre><p>&#36825;&#37324;&#29992;&#21040;&#30340;inform&#26159;WAComponent&#25552;&#20379;&#30340;&#19968;&#20010;&#20415;&#21033;&#26041;&#27861;&#65292;&#25105;&#20204;&#21487;&#20197;&#23519;&#30475;&#23427;&#30340;&#20195;&#30721;&#65306;</p><pre class="programlisting">inform: aString    self call: (WAFormDialog new addMessage: aString)</pre><p>&#30456;&#24212;&#30340;Java&#39118;&#26684;&#20195;&#30721;&#65288;&#19979;&#21015;&#20195;&#30721;&#19981;&#31526;&#21512;&#20219;&#20309;&#35821;&#35328;&#65289;&#65306;</p><pre class="programlisting">public void inform(Object aString) {    Object dialog = new WAFormDialog();    dialog.addMessage(aString);    this.call(dialog);}</pre><p>&#36825;&#20010;&#29992;&#27861;&#21644;&#25105;&#20204;&#20043;&#21069;&#20351;&#29992;WAYesOrNoDialog&#30340;&#26041;&#27861;&#26159;&#19968;&#27169;&#19968;&#26679;&#30340;&#65292;&#21482;&#19981;&#36807;&#36825;&#27425;&#25105;&#20204;&#21482;&#38656;&#35201;&#19968;&#20010;OK&#25353;&#38062;&#12290;&#20107;&#23454;&#19978;&#65292;WAComponent&#20063;&#25552;&#20379;&#20102;&#21478;&#19968;&#20010;&#20415;&#21033;&#26041;&#27861;confirm&#29992;&#26469;&#35843;&#29992;WAYesOrNoDialog&#65292;&#20854;&#25928;&#26524;&#21644;&#25105;&#20204;&#21018;&#25165;&#30340;&#20363;&#23376;&#38750;&#24120;&#30456;&#20284;&#12290;</p><p>&#24744;&#21487;&#20197;&#30475;&#30475;&#29616;&#22312;&#30340;WAGuessNumber&#20195;&#30721;&#65292;&#26159;&#19981;&#26159;&#21644;&#25105;&#20204;&#29992;C&#20889;&#30340;&#31532;&#19968;&#20010;&#29468;&#25968;&#23383;&#28216;&#25103;&#20960;&#20046;&#19968;&#26679;&#65311;&#21478;&#22806;&#65292;&#24744;&#36824;&#21487;&#20197;&#25226;&#23427;&#21152;&#20837;&#20219;&#20309;Seaside&#39029;&#38754;&#65292;&#23427;&#19981;&#20250;&#24433;&#21709;&#20854;&#20182;&#37096;&#20214;&#12290;</p><p>&#35201;&#22312;Seaside&#20013;&#30495;&#27491;&#36816;&#34892;WAGuessNumber&#65292;&#25105;&#20204;&#36824;&#26377;&#20960;&#20010;&#27493;&#39588;&#35201;&#23436;&#25104;&#12290;&#39318;&#20808;&#65292;&#25105;&#20204;&#35201;&#20026;WAGuessNumber&#21152;&#20837;&#19968;&#20010;class method&#65292;&#22914;&#19979;&#65306;</p><pre class="programlisting">canBeRoot    ^ true</pre><p>&#29992;Java&#39118;&#26684;&#35821;&#27861;&#20889;&#65292;&#23601;&#26159;&#65288;&#20197;&#19979;&#20195;&#30721;&#19981;&#31526;&#21512;&#20219;&#20309;&#35821;&#35328;&#65289;&#65306;</p><pre class="programlisting">public class WAGuessNumber{    public static boolean canBeRoot() {        return true;    }    . . . .}</pre><p>&#36825;&#26159;&#36890;&#30693;Seaside&#25105;&#20204;&#30340;WAGuessNumber&#26159;&#19968;&#20010;&#39030;&#32423;&#37096;&#20214;&#12290;&#28982;&#21518;&#25105;&#20204;&#21040;Seaside config&#65292;&#21152;&#20837;&#19968;&#20010;&#26032;&#30340;entry point&#21483;&#20570;guessnum&#12290;&#36825;&#20010;&#21517;&#23383;&#23558;&#25104;&#20026;WAGuessNumber&#30340;URL&#12290;</p><div class="screenshot"><div class="mediaobject"><img src="resources/config-guessnum.png"></div></div><p>&#28857;&#20987;Add&#21518;&#65292;&#25105;&#20204;&#23601;&#21487;&#20197;&#37197;&#21046;&#36825;&#20010;&#39029;&#38754;&#20102;&#12290;&#25214;&#21040;Root Component&#19968;&#26639;&#65292;&#24744;&#20250;&#30475;&#21040;&#25152;&#26377;canBeRoot&#36820;&#22238;true&#30340;WAComponent&#23376;&#31867;&#12290;&#36873;&#20013;WAGuessNum&#24182;&#25353;&#19979;done&#12290;</p><div class="screenshot"><div class="mediaobject"><img src="resources/guessnum-root.png"></div></div><p>&#22909;&#20102;&#65292;&#29616;&#22312;&#21040;<code class="uri">http://localhost:9090/Seaside/guessnum</code>&#65292;&#24744;&#23601;&#33021;&#30475;&#21040;&#25105;&#20204;&#21018;&#21018;&#20889;&#22909;&#30340;&#29468;&#25968;&#23383;&#28216;&#25103;&#65306;</p><div class="screenshot"><div class="mediaobject"><img src="resources/guessnum.png"></div></div><p>&#25105;&#20204;&#30340;&#29468;&#25968;&#23383;&#28216;&#25103;&#21040;&#36825;&#37324;&#23601;&#23436;&#25104;&#20102;&#12290;&#22914;&#26524;&#24744;&#26377;&#20852;&#36259;&#65292;&#24744;&#36824;&#21487;&#20197;&#25226;WAMultiCounter&#31245;&#20316;&#20462;&#25913;&#65292;&#25226;WACounter new&#25913;&#20026;WAGuessNum new&#65306;</p><pre class="programlisting">initialize    counters _ (1 to: 5) collect: [:i | WAGuessNum new]</pre><p>&#22238;&#21040;<code class="uri">http://localhost:9090/seaside/multi</code>&#65292;&#24744;&#23601;&#21487;&#20197;&#21516;&#26102;&#29609;&#20116;&#20010;&#30456;&#20114;&#29420;&#31435;&#30340;&#29468;&#25968;&#23383;&#28216;&#25103;&#65306;</p><div class="screenshot"><div class="mediaobject"><img src="resources/multi-guessnum.png"></div></div><p>&#22312;&#25105;&#20204;&#32467;&#26463;&#36825;&#20010;&#20363;&#23376;&#20043;&#21069;&#65292;&#25105;&#24076;&#26395;&#24744;&#33021;&#27880;&#24847;&#21040;Seaside&#20013;&#30340;&#23618;&#27425;&#32467;&#26500;&#21644;&#20256;&#32479;&#30340;&#32593;&#32476;&#31243;&#24207;&#19981;&#19968;&#26679;&#12290;PHP smarty&#21644;Spring MVC&#31561;&#31561;&#37117;&#23558;&#19981;&#28151;&#21512;HTML&#20195;&#30721;&#21644;&#36923;&#36753;&#20195;&#30721;&#20316;&#20026;&#30446;&#26631;&#65292;&#20294;&#22312;Seaside&#20013;HTML&#37117;&#26159;&#30001;&#31243;&#24207;&#29983;&#25104;&#30340;&#65292;&#27599;&#20010;component&#26082;&#26159;controller&#21448;&#26159;view&#12290;Seaside&#30340;&#26680;&#24515;&#21017;&#22312;&#20110;&#37096;&#20214;&#20043;&#38388;&#22312;&#26102;&#38388;&#21644;&#31354;&#38388;&#19978;&#30340;&#32452;&#21512;&#12290;&#26102;&#38388;&#19978;Seaside&#31361;&#20986;&#21487;&#20197;&#37325;&#22797;&#20351;&#29992;&#30340;&#31616;&#21333;WAComponent&#65292;&#20197;&#21450;&#38598;&#20013;&#34920;&#29616;&#36923;&#36753;&#30340;WATask&#20043;&#38388;&#30340;call/answer&#20998;&#23618;&#65307;&#31354;&#38388;&#19978;Seaside&#31361;&#20986;&#19968;&#20010;&#39029;&#38754;&#20869;&#37096;&#20214;&#20043;&#38388;&#30340;&#22871;&#29992;&#12290;&#32780;&#36825;&#20004;&#31181;&#20998;&#23618;&#22312;&#20256;&#32479;&#32467;&#26500;&#20013;&#19981;&#26159;&#24456;&#22797;&#26434;&#23601;&#26159;&#20960;&#20046;&#19981;&#21487;&#33021;&#12290;</p><p>&#25105;&#20204;&#30340;Seaside&#20043;&#26053;&#23601;&#21040;&#36825;&#37324;&#32467;&#26463;&#20102;&#65292;&#22312;&#27492;&#25105;&#20204;&#22238;&#39038;&#19968;&#19979;Seaside&#20027;&#39029;&#19978;&#27880;&#26126;&#30340;Seaside&#22235;&#22823;&#29305;&#28857;&#65306;</p><div class="orderedlist"><ol type="1"><li><p>&#31243;&#24207;&#24615;&#29983;&#25104;HTML&#20195;&#30721;&#65307;</p></li><li><p>&#22522;&#20110;callback&#30340;&#38142;&#25509;&#12290;&#25105;&#20204;&#19981;&#24517;&#20026;&#27599;&#20010;&#38142;&#25509;&#24819;&#19968;&#20010;&#29420;&#29305;&#30340;&#21517;&#23383;&#65292;&#28982;&#21518;&#20877;&#26681;&#25454;&#29992;&#25143;&#25552;&#20132;&#22238;&#26469;&#30340;&#21517;&#23383;&#36827;&#34892;&#19979;&#19968;&#27493;&#25805;&#20316;&#12290;Seaside&#20013;&#20195;&#30721;&#21487;&#20197;&#30452;&#25509;&#25918;&#22312;&#38142;&#25509;&#37324;&#65307;</p></li><li><p>&#20197;&#37096;&#20214;&#20026;&#26680;&#24515;&#12290;Java&#32593;&#32476;&#31243;&#24207;&#21592;&#23545;&#36825;&#28857;&#19968;&#23450;&#19981;&#20250;&#38476;&#29983;&#20102;&#65292;&#20294;&#26159; Seaside&#30340;&#24178;&#20928;&#31616;&#27905;&#24456;&#21487;&#33021;&#20250;&#35753;&#24744;&#32819;&#30446;&#19968;&#26032;&#12290;&#27809;&#26377;XML&#65292;&#19981;&#38656;&#35201;&#38405;&#35835;&#8220;&#22914;&#20309;&#21019;&#24314;&#33258;&#24049;&#30340;&#37096;&#20214;&#8221;&#65292;&#27809;&#26377;&#23567;&#23567;&#30340;&#26080;&#24847;&#20041;&#30340;&#19981;&#20415;&#20043;&#22788;&#65288;&#22914;tapestry&#30340;&#39029;&#38754;&#20108;&#27425;&#23637;&#24320;&#65292;&#25110;&#38656;&#35201;&#37325;&#26032;&#23398;&#20064;OGNL&#31561;&#23567;&#8220;&#35821;&#35328;&#8221;&#65289;&#65292;&#20063;&#27809;&#26377;&#21402;&#21402;&#30340;specification&#12290;&#24744;&#21482;&#38656;&#35201;&#35760;&#20303;&#65306;&#19968;&#12289;WAComponent&#30340;&#23376;&#31867;&#23601;&#26159;&#37096;&#20214;&#65292;&#20108;&#12289;&#27597;&#37096;&#20214;&#38656;&#35201;&#22312;child&#20989;&#25968;&#20013;&#36820;&#22238;&#33258;&#24049;&#30340;&#25152;&#26377;&#23376;&#37096;&#20214;&#65307;</p></li><li><p>&#36830;&#32493;&#30340;&#20107;&#20214;&#36923;&#36753;&#12290;&#19968;&#27425;&#29992;&#25143;&#25805;&#20316;&#30340;&#23436;&#25972;&#36923;&#36753;&#21487;&#20197;&#25918;&#22312;&#19968;&#20010;&#21333;&#29420;&#30340;&#20989;&#25968;&#37324;&#65292;&#23601;&#31639;&#22312;&#25972;&#20010;&#36807;&#31243;&#20013;&#29992;&#25143;&#20250;&#30475;&#21040;&#33509;&#24178;&#20010;&#39029;&#38754;&#12290;</p></li></ol></div><p>&#21040;&#36825;&#37324;&#25105;&#24076;&#26395;&#24744;&#24050;&#32463;&#23545;Seaside&#30340;&#36825;&#20123;&#29305;&#28857;&#26377;&#20102;&#30456;&#24403;&#30340;&#35748;&#35782;&#65292;&#20063;&#24076;&#26395;&#36825;&#37324;&#31616;&#21333;&#30340;&#20363;&#23376;&#24050;&#32463;&#28608;&#36215;&#20102;&#24744;&#36827;&#19968;&#27493;&#20102;&#35299;Seaside&#20197;&#21450;&#20854;&#20182;continuation&#26694;&#26550;&#30340;&#20852;&#36259;&#12290;</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch03s04.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="ch03.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="ch04.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.&nbsp;&#37096;&#20214;&#20043;&#38388;&#30340;call&#21644;answer&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;Chapter&nbsp;4.&nbsp;Continuation&#30340;&#23454;&#29616;</td></tr></table></div></body></html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -