华南俳烁实业有限公司

考試首頁 | 考試用書 | 培訓(xùn)課程 | 模擬考場(chǎng) | 考試論壇  
全國  |             |          |          |          |          |         
  當(dāng)前位置:計(jì)算機(jī)等級(jí) > 二級(jí)考試 > Java語言程序設(shè)計(jì) > 考試輔導(dǎo) > 文章內(nèi)容
  

全國計(jì)算機(jī)等級(jí)考試Java語言程序設(shè)計(jì)輔導(dǎo)(108)

中華IT學(xué)院   【 】  [ 2016年3月22日 ]

下面的例子演示了如何使用一個(gè)applet響應(yīng)來設(shè)置文件中指定的參數(shù)。該Applet顯示了一個(gè)黑色棋盤圖案和第二種顏色。

第二種顏色和每一列的大小通過文檔中的applet的參數(shù)指定。

CheckerApplet 在init()方法里得到它的參數(shù)。也可以在paint()方法里得到它的參數(shù)。然而,在applet開始得到值并保存了設(shè)置,而不是每一次刷新的時(shí)候都得到值,這樣是很方便,并且高效的。

applet viewer或者瀏覽器在applet每次運(yùn)行的時(shí)候調(diào)用init()方法。在加載applet之后,Viewer立即調(diào)用init()方法(Applet.init()什么也沒做),重寫該方法的默認(rèn)實(shí)現(xiàn),添加一些自定義的初始化代碼。

Applet.getParameter()方法通過給出參數(shù)名稱得到參數(shù)值。如果得到的值是數(shù)字或者其他非字符數(shù)據(jù),那么必須解析為字符串類型。

下例是CheckerApplet.java的梗概:

import java.applet.*;
import java.awt.*;
public class CheckerApplet extends Applet
{
   int squareSize = 50;// 初始化默認(rèn)大小
   public void init () {}
   private void parseSquareSize (String param) {}
   private Color parseColor (String param) {}
   public void paint (Graphics g) {}
}

下面是CheckerApplet類的init()方法和私有的parseSquareSize()方法:

public void init ()
{
   String squareSizeParam = getParameter ("squareSize");
   parseSquareSize (squareSizeParam);
   String colorParam = getParameter ("color");
   Color fg = parseColor (colorParam);
   setBackground (Color.black);
   setForeground (fg);
}
private void parseSquareSize (String param)
{
   if (param == null) return;
   try {
      squareSize = Integer.parseInt (param);
   }
   catch (Exception e) {
     // 保留默認(rèn)值
   }
}

該applet調(diào)用parseSquareSize(),來解析squareSize參數(shù)。parseSquareSize()調(diào)用了庫方法Integer. parseInt(),該方法將一個(gè)字符串解析為一個(gè)整數(shù),當(dāng)參數(shù)無效的時(shí)候,Integer.parseInt()拋出異常。

因此,parseSquareSize()方法也是捕獲異常的,并不允許applet接受無效的輸入。

Applet調(diào)用parseColor()方法將顏色參數(shù)解析為一個(gè)Color值。parseColor()方法做了一系列字符串的比較,來匹配參數(shù)的值和預(yù)定義顏色的名字。你需要實(shí)現(xiàn)這些方法來使applet工作。

分享到:
本文糾錯(cuò)】【告訴好友】【打印此文】【返回頂部
將考試網(wǎng)添加到收藏夾 | 每次上網(wǎng)自動(dòng)訪問考試網(wǎng) | 復(fù)制本頁地址,傳給QQ/MSN上的好友 | 申請(qǐng)鏈接 | 意見留言 TOP
關(guān)于本站  網(wǎng)站聲明  廣告服務(wù)  聯(lián)系方式  站內(nèi)導(dǎo)航  考試論壇
Copyright © 2007-2013 中華考試網(wǎng)(Examw.com) All Rights Reserved
八宿县| 乐平市| 东莞市| 铜山县| 汉寿县| 和静县| 军事| 阿图什市| 尚义县| 南通市| 保亭| 吐鲁番市| 油尖旺区| 五常市| 上杭县| 尼木县| 杭锦旗| 新郑市| 博乐市| 垣曲县| 文化| 阳谷县| 股票| 太湖县| 平武县| 平乡县| 启东市| 庐江县| 茶陵县| 株洲县| 应城市| 卫辉市| 巨野县| 广宗县| 新化县| 开鲁县| 宣恩县| 平陆县| 中江县| 金秀| 象山县|