国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

Siemens Java開發(fā)初步

2019-11-18 15:10:41
字體:
供稿:網(wǎng)友

  一、安裝開發(fā)工具

本文是介紹如何編寫在Siemens 6688i上運行的java程序,本文從一個工程tutorial開始,以實例講述了編寫方法。由于本人也是個初學(xué)者,還沒有仔細看過Java的書,只是略有點C++基礎(chǔ),對Java的術(shù)語都不知道,有錯誤的地方還請大家指正,并且本文會不斷更正、完善。
閱讀本文前,請確認您是否具有一定的Java基礎(chǔ)或C/C++基礎(chǔ),假如不是,請首先學(xué)習(xí)Java的基本語法。

本文的所有例子都是在Borland JBuilder 6 personal + Borland MobileSet 2.0 + Siemens Mobility Toolkit(SMTK)6688i v1.0 beta 7上運行通過的,另外還需要打包工具Jar。關(guān)于這四個工具的下載地點請去我的論壇查找。

開發(fā)工具的安裝與設(shè)置
首先安裝Borland JBuilder 6 personal,安裝完成后初次運行需要注冊,選擇Have License Key,點Next>,選擇Paste license key text,然后把下面這堆注冊碼復(fù)制進去,在確認一次協(xié)議后就OK了。
注冊碼如下:
%26%FFj%F4%00%00%023%DF%DD%23f
%BD%83%DF3%CD%02%1D%E0%D7%A1%1
4%C1%7E%28%A8%EA%C0x%DEw%3A%C3
%B2%ABX%92%02%14%81%8D%F4%0B%9
C%27y%90%DF%FE%7F%DF%23%7E%A7%
F2%E09%A1%00%7B%81%AA%9C%1A%B0
_%28%CB%E8%EBA%A1fN%F9%99%D9V%
87%01f%D8%8E%FA%3C%FC%1D%3E%A4
%BE%B5%0A%E7%0BG%E3%AE%AF%5D%A
A%5C%17%FD%EB%CAv%B2%09%16%E3%
CD%E0%0B%F1e%3E%CA%FA%CB%09%D5
7%3C%9C%F2%FEV%CF%0EV%8D%BC%CC
y%85My%F6%CB%C8D%F1%5E%29%DB%C
0%8A%17%E2K%22%F5%A9%80o%B1%20
%0C%D8%FD%B5%7C%ED%0D%7E%85%8A
%F0t%9A%0D%17%F1%96%95%0B%E2%1
D%1E%8E%9C%ECq%86I%20%CF%E0%F8
%7F%D2%02%7E%AC%90%80-%D5MM%F3
%E7%86%1D%B7%5CW%A0%E8%F7%3C%8
4%1F%0A%BF%A0%E2J%E0%16%16%D7%
93%E82%AAv%3B%89%B0%DA%11%AEmN
%FD%A1%B2I%B2%08%13%E5%AC%CF%1
6%BCt%1C%AA%A4%FF%7C%F8%24%05%
BB%D7%CD%5E%F1%7Ec%AC%EC%8B1%B
DdC%91%D7%DC%29%A7ei%DE%A3%F4%
2B%DD.O%ED%F3%8BT%E6e%24%D3%FC
%FD%60%D7c%3D%C9%CA%AB%0D%FBf6
%95%D8%D1%5B%C8T%19%ED%8A%B1%1
8%81%02U%8A%8C%92%20%95vi%B5%8
2%E7h%D1y%1A%C1%BC%88%26%FD_%0
5%B3%A5%DB%0B%8D%157%F9%FB%8CP
%FA%0Da%C8%99%96G%B5%02%3F%9C%
C9%9A%08%97oQ%A5%BC%92t%81.%05
%F7%A7%FF%18%BE_%22%A6%8D%EAK%
D6%06%3D%A5%D7%DCk%84o6%E4%E0%
C5D%FA%27%7D%B8%C0%AB%3E%83uV%
B8%F6%D2%2B%B1Hn%A6%F0%A70%FAF
%7E%AA%C6%DF%27%9D%0C%05%A0%97
%9E%3E%8BaX%D1%BB%AC%1B%82%7B%
25%CE%8D%A6n%FEIY%95%A6%F4%3E%
DDn-%EB%B5%869%CD%5Bo%DA%EE%A8
l%EDV%20%CD%E9%E1j%8F%5B%0B%82
%D4%B3t%A1%1EK%95%D7%AD%5B%FF%
18g%A1%F6%9B.%B6%7B3%E1%96%CF*
%F2%05v%A6%E1%8F%3C%A1%05%29%D
F%C4%D4p%B1o8%D3%D7%B4%12%97%0
5%0E%B2%D7%BCW%F0%17d%CD%90%E0
I%A3%00D%90%BD%C4L%B1ii%96%E1%
BD%3F%AB%28z%F5%D2%92%25%FF6H%
DB%E9%C9%1A%99%27

接下來安裝Borland MobileSet 2.0,安裝完成后初次運行JBuilder6也需要注冊,選擇Have License Key,點Next>,選擇Paste license key text,然后把下面這堆注冊碼復(fù)制進去,在確認一次協(xié)議后就OK了。
注冊碼如下:
R%1B%ABN%00%00%02L%DF%DD%23f%B
D%83%DF3%CD%02%1D%E0%D7%A1%14%
C1%7E%28%A8%EA%C0x%DEw%3A%C3%B
2%ABX%92%02%14%81%8D%F4%0B%9C%
27y%90%DF%FE%7F%DF%23%7E%A7%F2
%E09%A1%00%7B%81%AA%9C%1A%B0_%
28%CB%E8%EBA%A1fN%F9%99%D9V%87
%01f%D8%8E%FA%3C%FC%1D%3E%A4%B
E%B5%0A%E7%0BG%E3%AE%AF%5D%AA%
5C%17%FD%EB%CAv%C1%1E%7D%90%C0
%99o%8F%0B1%C7%EA%AA%0B%C8F_%8
3%9E%EC*%BCp8%82%B1%DC%18%87P%
08%95%D4%A4V%8D-W%B5%CF%87%07%
83I%3F%84%CA%9F%03%A3%5C%7F%A6
%93%BA%1D%F3l%15%96%8A%80a%8A%
11%1D%9C%EB%EEc%E4u%04%FA%93%F
Cw%FC%21H%A2%F3%F8z%AC%11%7B%D
7%FD%96S%C36%25%9B%8A%95%1D%B2
%22D%A5%93%9A*%FA%09q%D7%CB%86
Y%E3%1Ah%C7%9C%9A%5C%B5%0B%27%
F8%D2%BB%7C%BDnB%83%B1%BD%3B%D
C%17n%F9%DD%ADw%D1g%1F%A6%DA%E
Fp%A4m%06%E2%F1%B2W%E8T%0D%B2%
B2%AC%29%D8%1F%7B%92%AE%9A%14%
C02l%DA%F6%A5W%BD0%5C%8B%8A%F0
v%87%15b%F1%87%81k%94%02t%80%D
5%E1%0C%C8kl%BA%A9%FE.%EB8L%80
%AD%8CI%8FMD%D0%C1%E5r%D7%27%7
B%AA%CA%A3B%F7M%1E%D4%BD%E7%2C
%8A0L%B2%AE%81%7E%88%7Bh%F1%8D
%AE%02%E8%3B%2C%89%82%89%5D%8E
II%BD%C2%EE%10%8D%3Do%E3%E8%FC
N%CE%17u%BA%9D%CAO%BFWf%F2%E0%
E5%7E%FC%02%5E%82%92%CB%13%ED8
D%C6%D2%9Bq%E2-k%98%C4%DAe%A2%
1CC%C1%A3%AEy%99%13%14%E5%8A%F
64%90%10U%8F%83%BA%25%C93%00%9
6%E2%C0g%9E%20B%FF%D6%F9%01%BE
%28c%EE%FC%D9e%81H%14%90%CE%D9
9%C3y%1A%EB%A1%91%1F%89%28y%90
%9B%AEz%9C%1A%05%9E%E5%C6B%948
7%FF%A6%E0%7E%87LP%F5%D3%A6%3B
%B1%0B6%DD%C5%A5%14%FBbF%96%EA
%9BG%84%19v%BA%F6%FF%5C%F7e%5B
%D1%D0%A3%1B%FBb%5C%F7%87%D7-%
F6%0B%7D%DC%87%D52%DAD%1B%FB%8
7%CBz%C1%2CI%C2%B8%E5%17%97T%1
1%86%AF%DCS%EF6%3D%C4%CC%F2%1B
%9E%25%15%F2%CB%D2%05%AAi%5E%D
2%C1%BA%05%865%7C%AD%91%C2%29%
A2q%3C%B5%F4%ADs%C3ys%D4%F9%F2

最后安裝Siemens Mobility Toolkit(SMTK)6688i 1.0 beta8 或 SMTK 3118 1.0 beta8,安裝過程中會自動識別JDK的路徑為JBuilder6安裝路徑下的jdk1.3.1。
全部安裝完成后還需要配置一下JBuilder6。打開JBuilder6,然后點菜單Tools->Configure JDKs,在JDK home path欄點Change,選擇6688i SMTK安裝的路徑,要選到6688i_1b8或3118_1b8為止,確定后上面的Name欄會自動變成Siemens,然后點OK搞定。

二、第一個工程

新建一個工程
在Jbuilder6中先新建一個工程:點菜單File -> New PRoject,在對話框中輸入工程名、路徑等內(nèi)容。請在這里輸入Name:tutorial;Directory:D:mydocjava utorial(或你自己選擇的路徑),然后直接點Finish就可以了。
Java是基于類的,每個公共類都必須新建一個文件。
點菜單File -> New…,在對話框中雙擊Class,在Class name欄輸入類名稱TutorialMain,至于上面的Package用默認的就可以,下面的Base Class是定義基類,可以以后改。點OK就可以了。
用同樣的方法建立類TutorialForm和TutorialCanvas。
這三個文件的內(nèi)容分別是:
TutorialMain
package tutorial;
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;

public class TutorialMain extends MIDlet
{
protected static TutorialForm pStart;
protected static Display display;

public static void main(String args [])
{
TutorialMain app = new TutorialMain();
app.startApp();
}

public TutorialMain()
{
pStart = new TutorialForm();
}

protected void pauseApp()
{
}

protected void startApp()
{
display = Display.getDisplay(this);
pStart.activate(display, this);
}

public void destroyApp(boolean param)
{
display.setCurrent(null);
notifyDestroyed();
}
}

TutorialForm
package tutorial;
import javax.microedition.lcdui.*;

public class TutorialForm extends Form implements CommandListener
{
protected static final Command[] COMMANDS =
{
new Command("開始", Command.OK, 0),
new Command("退出", Command.STOP, 1),
};

protected static Display display;
protected static TutorialCanvas pGame = new TutorialCanvas();
protected static TutorialMain winMain;

public TutorialForm()
{
super("Java教程");
append("版本:0.1.0網(wǎng)址: hzfeng.yeah.net");

for (int i = 0; i < COMMANDS.length; i++)
addCommand(COMMANDS[i]);
}

public void activate(Display disp, TutorialMain tmain)
{
display = disp;
winMain = tmain;
display.setCurrent(this);
setCommandListener(this);
}

public void commandAction(Command cmd, Displayable obj)
{
if (cmd == COMMANDS[0])
{
pGame.activate(display, winMain);
}
else
winMain.destroyApp(true);
}
}

TutorialCanvas
package tutorial;
import javax.microedition.lcdui.*;

public class TutorialCanvas extends Canvas implements CommandListener
{
protected static final Command[] COMMANDS =
{
new Command("繼續(xù)", Command.OK, 0),
new Command("退出", Command.STOP, 1),
};
protected static Display display;
protected static TutorialMain winMain;
protected Graphics g;

public TutorialCanvas()
{
for (int i = 0; i < COMMANDS.length; i++)
addCommand(COMMANDS[i]);
}

protected void paint(Graphics parag)
{
g = parag;
g.drawString("你好", 0, 0, Graphics.TOPGraphics.LEFT);
}

public void activate(Display disp, TutorialMain tmain)
{
display = disp;
winMain = tmain;
display.setCurrent(this);
setCommandListener(this);
}

public void commandAction(Command cmd, Displayable obj)
{
if (cmd == COMMANDS[1])
winMain.destroyApp(true);
}
}

這里先不對這些代碼作解釋,先演示一下怎樣對工程進行編譯和運行。

編譯運行
點菜單Run -> Run Project,第一次運行會彈出對話框詢問要執(zhí)行的主類(Main Class),也就是從這個類開始執(zhí)行,切換到MIDlet子項,點“…”瀏覽,展開tutorial,選中下面的TutorialMain,然后OK。
JBuilder會自動調(diào)用6688i的仿真程序?qū)Τ绦蜻M行仿真。
每次運行前都會自動編譯,假如有錯誤,會有出錯顯示。

打包執(zhí)行
編譯好的文件都放在工程目錄下的classes里,里面有一個以Package名稱命名的子目錄,打包的時候要包括這個子目錄。
由于打包程序Jar是以命令行方式運行的,所以通常做個bat文件打包會比較方便。可以先將jar.exe復(fù)制到classes目錄里,然后在bat文件中寫jar cf tutorial.jar tutorial,執(zhí)行以下就搞定了。
下載到MMC卡上的時候,現(xiàn)在javajamgame下建立一個tutorial目錄,然后將tutorial.jar復(fù)制到該目錄下,另外還要將工程目錄下jad目錄中的TutorialMain.jad也復(fù)制到這個目錄中。
現(xiàn)在可以執(zhí)行一下試試看了。

示例說明
TutorialMain是起始類,由MIDlet繼續(xù)而來,其中的public static void main(String args [])就像C語言里的main函數(shù)一樣,是程序第一個執(zhí)行的函數(shù),這是52版開始要求的,52版以前可以不需要此函數(shù)。startApp里是開始運行程序所作的一些事,Display.getDisplay()是獲取屏幕顯示的對象,pStart.activate()見TutorialForm里的定義,其他的就沒什么可說的了,依樣畫葫蘆就可以了。
TutorialForm是由Form類繼續(xù)而來,F(xiàn)orm是一個窗體,有標(biāo)題,可以顯示文字也可以列出選項、設(shè)置按鈕。implements CommandListener表示這個類還用到了CommandListener這個組件,這是一個監(jiān)測按鈕動作的組件。
super("Java教程")是調(diào)用Form的構(gòu)造函數(shù),里面的字符串就是窗口的標(biāo)題。append()是在窗口上插入要現(xiàn)實的內(nèi)容,不僅可以插入文字還可以插入圖片等。for (int i = 0; i < COMMANDS.length; i++) addCommand(COMMANDS[i]); 是把上面定義的按鈕數(shù)組Command[]添加到窗口上。
commandAction是按鈕按下的響應(yīng)函數(shù),通過參數(shù)cmd可以判定出哪個按鈕被按下了,從而可以采取相應(yīng)的措施。
activate函數(shù)是自定義用來啟用TutorialForm類的。包括display.setCurrent(this)將屏幕輸出聯(lián)系到自己身上,setCommandListener(this)開始對按鈕動作進行監(jiān)測。而winMain變量的設(shè)置是為了調(diào)用TutorialMain的destroyApp函數(shù)以便退出程序。
TutorialCanvas是由Canvas類繼續(xù)而來,同時也需要監(jiān)測按鈕動作。Canvas是一個畫板,可以在上面畫圖、畫字符串等等。
paint函數(shù)是當(dāng)Canvas類顯示時調(diào)用的繪圖函數(shù),g.drawString("你好", 0, 0, Graphics.TOPGraphics.LEFT)是以坐標(biāo)(0,0)作為左上角畫了兩個字“你好”。其他的函數(shù)與TutorialForm類似。

三、幾個常用類

常用類簡介
MIDlet類
老實說我對這個類的理解也不深刻,也就是照著其他的程序依樣畫葫蘆,我認為這是一個起始類,程序執(zhí)行總是從這個類開始。必須要有的事件函數(shù)是startApp、pauseApp、destroyApp,顧名思義,就是起始、暫停、終止的時候起作用。

Form類
Form是一個窗體,有標(biāo)題,可以顯示文字也可以列出選項、設(shè)置按鈕。

Canvas類
Canvas是一個畫板,可以在上面畫圖、畫字符串等等。必須要有的事件函數(shù)是paint,在顯示的時候調(diào)用。

Graphics類
Graphics是一個畫圖的類,有畫框、畫線、畫塊、畫圓、畫字符串等功能函數(shù)。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 改则县| 莱州市| 伊川县| 新兴县| 沾益县| 德江县| 徐水县| 呼图壁县| 广州市| 麻阳| 乌拉特后旗| 瑞昌市| 苍梧县| 西昌市| 南皮县| 徐州市| 澳门| 察哈| 马尔康县| 昌乐县| 土默特右旗| 通化县| 河间市| 沽源县| 衡南县| 白河县| 集贤县| 孟津县| 广平县| 治县。| 阳春市| 西畴县| 太保市| 锡林郭勒盟| 诏安县| 香河县| 铜陵市| 海原县| 郸城县| 繁峙县| 颍上县|