TDA2030功放電路圖 電動車充電器電路圖 電子電路 功放電路 電子制作 集成塊資料 電子報 pcb 變壓器 元器件知識 逆變器電路圖 電路圖 開關電源電路圖 傳感器技術 led 電磁兼容
電子電路圖
當前位置: 首頁 > 電子電路 > 設計編程

介紹Java嵌入式系統開發

時間:2009-09-16 21:26:18來源:網友 作者:admin 點擊:

使 用Java編 寫Palm OS程 序的 解 決 方案
  現在,使用Java語言為 Palm OS編寫程序的領域還沒有完全統一,并且也有許多程度上的差異,目前,市面上有好幾種不同的可用的應用程序接口,每種應用程序接口都給出了一個到當前的Palm OS應用程序不同程度的訪問權限。也許這其中大家最熟悉的是Sun微系統出品的產品;但是能夠為Palm OS寫程序的絕不只有這一種產品。本文這一部分并不是介紹使用Java編寫Palm程序的教程--因為每種我們將要討論的解決方案都有自己的要求和值得注意的地方--而是一篇向開發者概括介紹開發工具的的文章,我們將縱觀這一領域,找出在使用 Java語言開發 Palm OS應用程序時,你應該使用什么工具以及你又能夠得到什么。

  一、Sun的解決方案: KVM、 Configuration和 Profile

  KVM是 Kilobyte Virtual Machine (千字節虛擬機),那么命名是因為它的內存大小是以千字節來量度,而不是像 Java虛擬機那樣需要兆字節。 因為有這么苛刻的內存要求, KVM的功能只是完整 JVM的的子集。 你可以從 Javasoft站點上找到全部的信息,但是值得注意的是它遺漏了映射(reflection)、 JNI和自定義類裝載器以及一個可變的安全機制。

  Sun已經制訂一個計劃,提供了 configuration和 profile來滿足設備程序設計的需要。 configuration是一個應用程序接口,是設計來提供一個基礎,用于一類廣泛的一般的設備,所有的這些設備都有相似的特性,比如說有限的內存,偶然性強的網絡連接性,低電力消耗,可運行在電池上,所以,J2Me被設計得既一般又抽象。 現在 Java 2 Micro Edition(J2ME)可用的 configuration有 CLDC(Connected,Limited Device Configuration)和 CDC(Connected Device Configuration)兩種,后者用于比 Palm功能更強大的設備,這就超出了我們討論的范圍;而前者,代表有限連接設備配置,是像PDA,雙通道呼叫器以及移動電話。 CLDC包括一個J2SE中的類的子集,但是有一些重要的差別,例如,因為小型設備中的虛擬機使用的無用單元收集機制,CLDC的 java.lang.Object不包含 finalize方法,你應當記住,這個應用程序接口中的某個特定的類可能出現但是它的某個方法卻沒有出現。請參考應用程序接口文檔,這樣的話你就會知道什么時候該用什么configuration了。

  對于許多剛開始使用 CLDC開發程序的朋友,感到奇怪的是 CLDC不支持浮點數。 這是 KVM默認的實現, KVM是使用 C編寫的,它可以被移植到許多平臺上,它不支持浮點運算,這是因為我們所面對的硬件一般是小型設備,有的還是使用8位的處理器,這些處理器有可能不支持浮點運算。

  profile是特殊的具體的,它的目標是一個比configuration更具體的設備的類,包括用戶界面和事件處理元素,這在 configuration中是沒有出現。 現在, Palm OS或 PDA沒有公開可用的 profile。

  Java Community Process有一個已經開發了一段時間的 PDA Profile, 開發者們仍然在等待一個新的 PDA profile版本。與此同時,想要遵循 KVM/Sun解決方案開發者的應當做什么呢? CLDC版本包括一個可以用作 Palm OS的 最原始的profile的類的最小的集合, 據悉, Sun不贊同使用這些類開發任何商業程序,他們也不計劃對這個應用程序接口做任何更新。 但是如果沒有 PDA profile,開發者也可以使用這些類庫。 通常我們所知的是Kjava,它包含了許多 GUI類: CheckBox、 RadioButton、 List等等。除了這些,還有 Spotlet類,它被用于處理事件以及 Palm OS捕獲手寫筆的輸入和鍵盤按下的事件等等。

  下面是一個使用 kjava來顯示簡單的文本字符串和按鈕的類:
 
 import com.sun.kjava.*;

public class HelloKjava extends Spotlet
{
 private static Button OKButton;
 public static Graphics g = Graphics.getGraphics();
  file://取得Graphics對象

 public static void main(String args[])
 {
  HelloKjava hk = new HelloKjava();
 }


 public HelloKjava() 類的構造方法
 { OKButton = new Button("OK", 84, 140);
  register(NO_EVENT_OPTIONS);
  drawScreen();
 }
 public void penDown(int x, int y) {
  if (OKButton.pressed(x,y)) {
   System.exit(1);
  }
 }
 public void drawScreen()
 {
  g.clearScreen(); file://清除屏幕容-源-電-子-網-為你提供技術支持

本文地址:http://www.morningstargreenhouses.com/dz/22/9916213041.shtml


本文標簽:


.
123下一頁尾頁
頂一下
0%
返回首頁
0
0%

------分隔線----------------------------
發表評論
請自覺遵守互聯網相關的政策法規,嚴禁發布色情、暴力、反動的言論。
表情:
名稱: E-mail: 驗證碼: 匿名發表
發布文章,推廣自己產品。
亚洲熟妇无码一区二区三区苍井空|色喜国模苍井空|欧美曰本理论在线dⅴd|久久久久69精品成人片