Chapter 14 感測器 作者 : 林致孙 手機和感測器的結合, 讓手機產生更多的應用, 除了應用於遊戲軟體, 感測器也讓手機上實作擴增實境變得更容易 本章將介紹應用程式如何讀取手機上的感測器, 同時也會提供範例, 讓讀者瞭解方位感測器 (Orientation Sensor) 與加速度感測器

Size: px
Start display at page:

Download "Chapter 14 感測器 作者 : 林致孙 手機和感測器的結合, 讓手機產生更多的應用, 除了應用於遊戲軟體, 感測器也讓手機上實作擴增實境變得更容易 本章將介紹應用程式如何讀取手機上的感測器, 同時也會提供範例, 讓讀者瞭解方位感測器 (Orientation Sensor) 與加速度感測器"

Transcription

1 Chapter 14 感測器 作者 : 林致孙 手機和感測器的結合, 讓手機產生更多的應用, 除了應用於遊戲軟體, 感測器也讓手機上實作擴增實境變得更容易 本章將介紹應用程式如何讀取手機上的感測器, 同時也會提供範例, 讓讀者瞭解方位感測器 (Orientation Sensor) 與加速度感測器 (Accelerometer Sensor) 的應用 14.1 讀取感測資料 首先我們先學習感測器相關類別的使用方法, 請讀者引進光碟中 \ 範例程式 \Chapter14\SensorList 這個專案, 這個專案有兩個 Activity: SensorList: 繼承了 ListActivity, 會列出手機上所的感測器, 點選個別的感測器後, 會跳至 SensorReader 讀取所選取的感測器的讀值 SensorReader: 讀取特定感測器的數值 讓我們先來看 SensorList 這個 Activity, 其內容如下所示 : 1 public class SensorList extends ListActivity { 2 3 private SensorManager smgr; 4 List<Sensor> slist; 5 7 public void oncreate(bundle savedinstancestate) { 8 super.oncreate(savedinstancestate); 9 setcontentview(r.layout.main); smgr = (SensorManager)getSystemService( 12 Context.SENSOR_SERVICE); 13 slist = smgr.getsensorlist(sensor.type_all); 14 ArrayList<String> snlist = new ArrayList<String>(); for (int i = 0; i < slist.size(); i++) 17 snlist.add(slist.get(i).getname()); ListAdapter adapter = new ArrayAdapter<String>(this, 20 R.layout.list_item, snlist);

2 21 setlistadapter(adapter); 22 } protected void onlistitemclick(listview l, View v, 26 int position, long id) { 27 super.onlistitemclick(l, v, position, id); Intent intent = new Intent(this, SensorReader.class); 30 intent.putextra("key_type", slist.get(position).gettype()); 31 startactivity(intent); 32 } 33 } 首先為了存取手機上的感測器資訊, 程式於第 11 行先呼叫 getsystemservice 取得一個 SensorManager 物件 [1], 第 13 行呼叫 SensorManager 物件的 getsensorlist 方法取得 Sensor 物件 [2], 參數 Sensor. TYPE_ALL 代表所有種類的感測器都要取得, 如果是 Sensor. TYPE_ACCELEROMETER 代表只取得加速度感測器的 Sensor 物件 ( 一個手機有可能擁有兩個以上的同種類測器 ) 第 17 行呼叫 Sensor 物件的 getname 方法取得感測器的名稱, 這名稱即要呈現於列表介面元件 (ListView) 的 資料 而當使用者點選某個感測器後, 會將感測器的型別 ( 可想成種類 ) 夾帶在 Intent 裡傳送給 SensorReader 下圖是筆者截取實機所得到的執行畫面: 接著討論 SensorReader 這個 Activity, 其內容如下所示 : 1 public class SensorReader extends Activity {

3 2 3 private SensorManager smgr; 4 private TextView tv; 5 private Sensor sensor; 6 8 public void oncreate(bundle savedinstancestate) { 9 super.oncreate(savedinstancestate); 10 setcontentview(r.layout.reader); tv = (TextView)findViewById(R.id.tv_sresult); smgr = (SensorManager)getSystemService( 15 Context.SENSOR_SERVICE); 16 Intent intent = getintent(); 17 int stype = intent.getintextra("key_type", -1); sensor = smgr.getdefaultsensor(stype); 20 } protected void onresume() { 24 smgr.registerlistener(slistener, sensor, 25 SensorManager.SENSOR_DELAY_UI); 26 super.onresume(); 27 } protected void onpause() { 31 smgr.unregisterlistener(slistener, sensor); 32 super.onpause(); 33 } private final SensorEventListener slistener = 36 new SensorEventListener() { 37 public void onsensorchanged (SensorEvent event) { 38 if (event.sensor!= sensor) return; 39

4 40 String str = ""; switch (sensor.gettype()) { 43 case Sensor.TYPE_ACCELEROMETER: 44 str = "Accelerometer Sensor\n"; 45 break; 46 case Sensor.TYPE_GYROSCOPE: 47 str = "Gyroscope Sensor\n"; 48 break; 49 case Sensor.TYPE_LIGHT: 50 str = "Light Sensor\n"; 51 break; 52 case Sensor.TYPE_MAGNETIC_FIELD: 53 str = "Magnetic Field Sensor\n"; 54 break; 55 case Sensor.TYPE_ORIENTATION: 56 str = "Orientation Sensor\n"; 57 break; 58 case Sensor.TYPE_PRESSURE: 59 str = "Pressure Sensor\n"; 60 break; 61 case Sensor.TYPE_PROXIMITY: 62 str = "Proximity Sensor\n"; 63 break; 64 case Sensor.TYPE_TEMPERATURE: 65 str = "Temperature Sensor\n"; 66 break; 67 } for (int i = 0; i < event.values.length; i++) 70 str = str + "values[" + i + "]: " + 71 event.values[i] + "\n"; str = str + "Accuracy: " + event.accuracy; tv.settext(str); 76 } 77 }

5 78 public void onaccuracychanged (Sensor sensor, int accuracy) { 79 } 80 }; 81 } 首先在第 14 行, 同樣使用 getsystemservice 方法取得 SensorManger 物件, 接著利用 getdefaultsensor 取得該種類的 Sensor 物件, 若同種類的感測器數目有兩個以上,Intent 需另外攜帶感測器的名稱, 同時應該使用 getsensorlist 取代 getdefaultsensor 為了讀取該感測器的資料, 我們必須設計一個傾聽者給感測器, 傾聽者類別需實作 SensorEventListener 介面 [3], 程式碼是位於 35~80 行, 一樣使用了匿名類別的技巧, 有兩個抽象方法需要實作 : onaccuracychanged: 當量測值的精準度改變時, 這個方法會被呼叫 onsensorchanged: 當量測值改變時, 這個方法會被呼叫 我們把焦點放在 onsensorchanged 方法,onSensorchanged 會傳入一個 SensorEvent 物件 [4], 感測的值可從這個 SensorEvent 物件中抓取, 首先在 38 行, 先判斷發生事件的感測器是否是我們所要量測的感測器, 接著 42~67 行, 我們將感測器的種類抓出來, 並設定之後要用來顯示於 TextView 上的字串, 字串是告訴使用者讀取到的感測器是哪一種感測器 讀取感測器值的程式是寫在 69~71 行, 感測值會儲存在一個浮點數陣列 (float [] values), 這個浮點數陣列是 SensorEvent 類別的成員變數, 不同種類的感測器有不同的意義 [4], 以方位感測器 (Orientation Sensor) 為例, 當手機是正著直著拿在手上時, 如下圖所示,values[0] 的值意義為 :0 代表北方 90 代表東方 180 代表南方 270 代表西方,values[1] 是縱向旋轉角, 現在一樣正著直著拿著手機, 向外旋轉, 垂直向上時值為 90 面朝上平置時值為 0 垂直向下時值為 90 面朝下平置時值為 180,values[2] 是橫向旋轉角, 現在一樣正著直著拿著手機, 左或向右旋轉, 朝前時值為 0 往右橫放是-90 往左橫放是 90, 詳細的定義可參閱說明文件 [4], 若對說明文件 [4] 不是十分瞭解, 筆者建議讀者可利用本程式自行做一些測詴, 便能體會出值是如何變化的

6 而以加速度感測器為例的話,values[0] 代表手機的 X 軸所承受的加速度減去重力於 X 軸所帶來的加速度, 以上圖為例, 手機的 X 軸是指比較窄的那一個邊所型成的軸, 往右較大,values[1] 代表手機的 Y 軸所承受的加速度減去重力於 Y 軸所帶來的加速度, 以上圖為例, 手機的 Y 軸是指比較長的那一個邊所型成的軸, 往上較大,values[2] 代表手機的 Z 軸所承受的加速度減去重力於 Z 軸所帶來的加速度, 手機的 Z 軸代表著向外或向內, 往外較大 當正著直著拿著手機時, 可發現,values[0] 與 values[2] 會接近於 0, 而 Y 軸受到了向下的重力加速度 (-9.81 公尺 / 秒平方 ), 因為手機穩穩的拿在手上, 因此 Y 軸事實上並沒有任何加速度 (0 公尺 / 秒平方 ), 因此 0-(-9.81)=9.81, 讀者可發現 values[1] 的值會接近 9.81 其它感測器的讀值就請讀者自行閱讀說明文件 SensorEvent 物件還有一個成員變數為 accuracy(73 行 ), SENSOR_STATUS_ACCURACY_HIGH( 值為 3) 代表這個回報的值是很精準的, SENSOR_STATUS_UNRELIABLE( 值為 0) 則代表回報的值的精準度是最低的, 請讀者參考說明文件 [1] 此外, 若在精準度發生變化時, 做些處理動做的話, 就要去確實實作 78 行的 onaccuracychanged 方法 現在傾聽者已經設計完成, 我們要幫感測器跟其傾聽者連結在一起, 當感測器註冊了傾聽者後, 程式就會一直去讀取感測器的資料, 因此我們希望只有當程式在前景執行時才讀取感測器的資料, 因此於 onresume 方法 ( 第 24 行 ) 呼叫 SensorManager 類別的 registerlistener 方法去做註冊,registerListener 方法需要三

7 個參數, 第一個參數傾聽者物件, 第二個參數是感測器物件, 第三個參數是設定回報速率, 亦即多久回報一次, 共有四種速率可選擇 : SENSOR_DELAY_FASTEST SENSOR_DELAY_GAME SENSOR_DELAY_UI 與 SENSOR_DELAY_NORMAL 程式於 onpause 方法 ( 第 31 行 ) 呼叫 unregisterlistener 方法取消註冊, 如此當程式 進入背景或結束時就不會讀取感測器了 下圖是筆者於實機讀取方位感測器的一 個執行畫面 : 14.2 方位感測器的應用 在這一節筆者將示範一個方位感測器的應用, 這個應用程式的功能相當簡單, 就是出現一個箭頭指向亞洲大學行政大樓 請讀者引進光碟中 \ 範例程式 \Chapter14\OrientationApp 這個專案, 裡面有兩個 Java 原始碼檔案 : OrientationApp.java: 這是一個 Activity, 會讀取 GPS 以及方位感測器的資料, 藉以判斷箭頭應該呈現的方向 ArrowView.java: 其繼承了 View 類別, 是一個客製化的 View, 主要是用來顯示箭頭 先來討論 OrientationApp.java, 其內容如下 : 1 public class OrientationApp extends Activity { 2 3 private ArrowView av; 4 private MyLocationListener mll; 5 private MySensorListener msl;

8 6 private LocationManager lmgr; 7 private SensorManager smgr; 8 private List<Sensor> slist; 9 private float orientation, target; public void oncreate(bundle savedinstancestate) { 13 super.oncreate(savedinstancestate); setrequestedorientation( 16 ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); av = new ArrowView(this); 19 setcontentview(av); lmgr = (LocationManager)getSystemService(LOCATION_SERVICE); 22 mll = new MyLocationListener(); smgr = (SensorManager)getSystemService( 25 Context.SENSOR_SERVICE); 26 msl = new MySensorListener(); slist = smgr.getsensorlist(sensor.type_orientation); 29 if (slist.size() == 0) { 30 Toast.makeText(this, "No orientation sensor", 31 Toast.LENGTH_SHORT).show(); 32 finish(); 33 } 34 orientation = (float)0.0; 35 target = (float)0.0; 36 } protected void onresume() { 40 super.onresume(); 41 lmgr.requestlocationupdates( 42 LocationManager.GPS_PROVIDER, 0, 0, mll); 43 smgr.registerlistener(msl, slist.get(0),

9 44 SensorManager.SENSOR_DELAY_UI); 45 } protected void onpause() { 49 super.onpause(); 50 lmgr.removeupdates(mll); 51 smgr.unregisterlistener(msl, slist.get(0)); 52 } private void adjustarrow() { 55 float degree = target-orientation; 56 if (degree < 0) degree = degree f; 57 av.setdegree(degree); 58 setcontentview(av); 59 } class MySensorListener implements SensorEventListener { 62 public void onsensorchanged (SensorEvent event) { 63 if (event.sensor == slist.get(0)) { 64 orientation = event.values[0]; 65 adjustarrow(); 66 } 67 } 68 public void onaccuracychanged (Sensor sensor, int accuracy) { 69 } 70 } class MyLocationListener implements LocationListener { 74 public void onlocationchanged(location location) { 75 if (location == null) 76 return; Location dest = new Location(location); 79 dest.setlatitude( ); 80 dest.setlongitude( ); 81 target = location.bearingto(dest);

10 82 adjustarrow(); 83 } 85 public void onproviderdisabled(string provider) { 86 } 88 public void onproviderenabled(string provider) { 89 } 91 public void onstatuschanged(string provider, int status, 92 Bundle extras) { 93 } 94 } 95 } 這個程式使用到的大部份類別與方法都學過了, 因此筆者只告訴讀者這個程式做了哪幾件事, 讓讀者自行去閱讀細節即可, 這個程式主要做了幾件事 : 設計感測器的傾聽者 (61~70 行 ): 當發現感測值發生變化後, 程式會設定變數 orientation 的值 (values[0]), 藉此來判斷使用者面對的方位, 並呼叫我們自行定義的 adjustarrow 方法來設定箭頭的方向 設計 GPS 的傾聽者 (72~94 行 ): 當發現使用者所在位置改變時, 程式會去計算目標物 ( 亞洲大學行政大樓 ) 是在使用者的哪個方位, 要知道目標物是在使用者的哪個方位可利用 Location 類別 bearingto 方法 [5], 如果目標物在使用者的正北方, 變數 target 的值為 0, 如果目標物在使用者的正東方, 變數 target 的值為 90, 以此類推 接著一樣呼叫自行定義的 adjustarrow 方法來設定箭頭的方向 此處要提醒一下, 及 是亞洲大學行政大樓的經緯度值, 讀者可換成在自己附近的目標物, 以方便程式的測詴 設定箭頭方向 : 寫於 adjustarrow 方法 (54~59 行 ), 我們假設手機正上方為 0 度, 右側為 90 度, 則箭頭應該偏轉的角度只要將 target 減去 orientation 即可算出 算出偏轉角度後呼叫 ArrowView 類別 ( 程式自行定義的, 稍後會解說 ) 的 setdegree 方法將角度傳送給 ArrowView 物件, 並將 ArrowView 顯示於畫面上 於 onresume 方法啟動定位與感測服務 (39~45 行 ) 於 onpause 方法停止定位與感測服務 (48~52 行 ) 在這個 OrientationApp.java 的程式中, 我們沒學過的應該就只有第 15 行 Activity 類別的 setrequestedorientation 方法, 其可用來設定畫面的呈現方式, 是要直著 看 (SCREEN_ORIENTATION_PORTRAIT) 或是橫著看

11 (SCREEN_ORIENTATION_LANDSCAPE), 如下圖所示, 其它的呈現方式可參考 ActivityInfo 類別的說明 [6] 接下來可以開始來討論 ArrowView.java 了, 其內容如下 : 1 public class ArrowView extends View { 2 3 private final float alength = (float)100.0; 4 private final float arrowd = (float)10.0; 5 private final float arroww = (float)5.0; 6 7 float startx, starty, stopx, stopy, degree; 8 9 public ArrowView(Context context) { 10 super(context); 11 startx = (float)160.0; 12 starty = (float)240.0; 13 degree = (float)0.0; 14 } protected void setdegree(float degree) { 17 this.degree = degree; 18 } protected void ondraw(canvas canvas) {

12 22 23 Paint paint = new Paint(); float radian = (float)(degree*math.pi/180.0); 26 stopx = startx + (float)(alength*math.sin(radian)); 27 stopy = starty - (float)(alength*math.cos(radian)); 28 canvas.drawcolor(color.white); 29 canvas.drawline(startx, starty, stopx, stopy, paint); float v3x, v3y, diffx, diffy, leftax, leftay, rightax, rightay; v3x = stopx + ((startx-stopx)*arrowd)/alength; 34 v3y = stopy + ((starty-stopy)*arrowd)/alength; diffx = (float)math.abs((arroww*(stopy-starty))/alength); 37 diffy = (float)math.abs((arroww*(stopx-startx))/alength); if ((startx-stopx) < 0.0) { 40 leftay = v3y - diffy; 41 rightay = v3y + diffy; 42 } else { 43 leftay = v3y + diffy; 44 rightay = v3y - diffy; 45 } if ((starty-stopy) < 0.0) { 48 leftax = v3x + diffx; 49 rightax = v3x - diffx; 50 } else { 51 leftax = v3x - diffx; 52 rightax = v3x + diffx; 53 } 54 canvas.drawline(leftax, leftay, stopx, stopy, paint); 55 canvas.drawline(rightax, rightay, stopx, stopy, paint); 56 } 57 } ArrowView 繼承了 View 類別, 是一個客製化的 View, 我們只要覆寫 ondraw 方

13 法, 便可呈現我們所設計的 View,onDraw 會傳進一個畫布 (Canvas) 物件, 我們只要在畫布上畫出想要呈現的線條 圖形等即可設計出自己的 View, 這部份請讀者自行閱讀相關類別的說明文件 [7][8], 這裡不做太多的說明, 然而筆者還是附上一張圖, 讓讀者能夠更容易瞭解箭頭是如何畫出來的 最後一件要提醒讀者的事是, 別忘了於 AndroidManifest.xml 中聲明這個程式需 要得到精確位置資訊, 亦即要讀取 GPS 資訊 下面是執行畫面, 然而要測詴這 個程式是否正確, 還是要走出戶外 : 14.3 加速度感測器的應用 在這一節筆者將示範一個加速度感測器的應用, 這個應用程式的功能用來偵測手機是否有劇烈晃動 請讀者引進光碟中 \ 範例程式 \Chapter14\AccelerometerApp 這個專案, 裡面只有 AccelerometerApp 這個 Activity, 其內容如下 : 1 public class AccelerometerApp extends Activity { 2 3 float max;

14 4 TextView tv; 5 private SensorManager smgr; 6 private List<Sensor> slist; 7 boolean isstarted; 8 10 public void oncreate(bundle savedinstancestate) { 11 super.oncreate(savedinstancestate); setrequestedorientation( 14 ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); setcontentview(r.layout.main); 17 tv = (TextView)findViewById(R.id.tv_max); 18 Button btn_start = (Button)findViewById(R.id.btn_start); 19 btn_start.setonclicklistener(start_l); 20 Button btn_stop = (Button)findViewById(R.id.btn_stop); 21 btn_stop.setonclicklistener(stop_l); smgr = (SensorManager)getSystemService( 24 Context.SENSOR_SERVICE); slist = smgr.getsensorlist(sensor.type_accelerometer); 27 if (slist.size() == 0) { 28 Toast.makeText(this, "No accelerometer sensor", 29 Toast.LENGTH_SHORT).show(); 30 finish(); 31 } 32 isstarted = false; 33 } private final SensorEventListener mlistener = new 36 SensorEventListener() { 37 public void onsensorchanged (SensorEvent event) { 38 if (event.sensor == slist.get(0)) { 39 if (isstarted == false) return; float totalforce = (float)0.0;

15 42 43 totalforce += (float)math.pow( 44 event.values[0]/sensormanager.gravity_earth, 2.0); 45 totalforce += (float)math.pow( 46 event.values[1]/sensormanager.gravity_earth, 2.0); 47 totalforce += (float)math.pow( 48 event.values[2]/sensormanager.gravity_earth, 2.0); totalforce = (float)math.sqrt(totalforce); if (totalforce > max) 53 max = totalforce; 54 } 55 } 56 public void onaccuracychanged (Sensor sensor, int accuracy) { 57 } 58 }; OnClickListener start_l = new OnClickListener() { 61 public void onclick(view v) { 62 if (isstarted == true) return; 63 isstarted = true; 64 max = (float)0.0; 65 smgr.registerlistener(mlistener, slist.get(0), 66 SensorManager.SENSOR_DELAY_UI); 67 tv.settext(""); 68 } 69 }; OnClickListener stop_l = new OnClickListener() { 72 public void onclick(view v) { 73 if (isstarted == false) return; 74 isstarted = false; 75 smgr.unregisterlistener(mlistener, slist.get(0)); 76 if (max < 2.5) { 77 tv.settext("fail! Try again!"); 78 } else { 79 tv.settext("max: " + max);

16 80 } 81 } 82 }; 83 } 這個程式有兩個按鈕 : Start 按鈕: 其傾聽者是實作於 60~69 行, 其主要功能是啟動感測器的讀取, 並將最大值 (max) 的值做初始化 Stop 按鈕: 其傾聽者是實作於 71~82 行, 其主要功能是停止讀取感測器, 並檢查所測得的最大值 (max) 是否有大於 2.5, 若小於 2.5, 會告訴使用者其沒有盡全力晃動手機, 若大於 2.5, 則將測得的最大值告訴使用者 晃動值的計算是寫於感測器的傾聽者內 (35~58 行 ), 其主要是運用畢氏定理算出 總值 ( a 2 + b 2 + c 2 ), 這裡順便跟讀者點出一件事, 當手機歪斜著拿著不動時, 若把三軸的加速度值利用畢氏定理算出會得出接近 9.81( 重力加速度 ) 的數才對 讀者按下 Start 按鈕就可開始進行測詴, 而按下 Stop 按鈕就可觀看結果, 唯一要注意的是不要不小心把手機甩出去, 甚至砸到電視 下面分別是晃動成功 與失敗的執行結果畫面 : 14.4 摘要 本章將介紹了感測器的相關應用, 首先我們學會了如何獲得手機上的感測器清單, 並瞭解如何讀取感測器的感測值 接著我們分別學習了一個方位感測器 (Orientation Sensor) 與一個加速度感測器 (Accelerometer Sensor) 的應用 手機和感測器的結合, 讓手機產生更多的應用, 除了應用於遊戲軟體, 感測器也讓手機上

17 實作擴增實境變得更容易 14.5 作業 1. 寫一個程式來判斷手機的放置方式 : 平放 水平立放或垂直立放, 分別如下 圖所示 請使用加速度感測器 2. 寫一個程式來判斷手機的放置方式 : 平放 水平立放或垂直立放 這次請改 用方位感測器 3. 改寫 14.2 的程式, 選定兩個不同的目標物, 程式會出現兩個箭頭分別指向 兩個目標物 14.6 參考資料 [1] SensorManager Android Developers, [2] Sensor Android Developers, [3] SensorEventListener Android Developers, [4] SensorEvent Android Developers, [5] Location Android Developers, [6] ActivityInfo Android Developers,

18 [7] Canvas Android Developers, [8] Paint Android Developers,

Microsoft PowerPoint - Lab 2-2 Android Sensors.pptx

Microsoft PowerPoint - Lab 2-2 Android Sensors.pptx Nt Network Optimization i Lab Department of Computer Science National Chiao Tung University 前言 Android phone 和 sensor 的結合, 讓 Android phone 產生了更多的應用, 讓手機程式開發者可以朝向更多方面的發展, 不管是遊戲方面的應用, 抑或是行為偵測程式的開發, 都可藉由

More information

Microsoft PowerPoint - 12 特色开发.ppt [兼容模式]

Microsoft PowerPoint - 12 特色开发.ppt [兼容模式] 手 机 应 用 平 台 软 件 开 发 12 特 色 开 发 刘 宁 Email:liuning2@mail.sysu.edu.cn Android 的 传 感 器 系 统 传 感 器 系 统 综 述 传 感 器 系 统 层 次 结 构 传 感 器 系 统 的 硬 件 抽 象 层 传 感 器 系 统 的 使 用 传 感 器 系 统 综 述 传 感 器 (Sensor) 系 统 可 以 让 智 能 手

More information

主程式 : public class Main3Activity extends AppCompatActivity { ListView listview; // 先整理資料來源,listitem.xml 需要傳入三種資料 : 圖片 狗狗名字 狗狗生日 // 狗狗圖片 int[] pic =new

主程式 : public class Main3Activity extends AppCompatActivity { ListView listview; // 先整理資料來源,listitem.xml 需要傳入三種資料 : 圖片 狗狗名字 狗狗生日 // 狗狗圖片 int[] pic =new ListView 自訂排版 主程式 : public class Main3Activity extends AppCompatActivity { ListView listview; // 先整理資料來源,listitem.xml 需要傳入三種資料 : 圖片 狗狗名字 狗狗生日 // 狗狗圖片 int[] pic =new int[]{r.drawable.dog1, R.drawable.dog2,

More information

Android Service

Android Service Android Service- 播放音樂 建國科技大學資管系 饒瑞佶 2013/7 V1 Android Service Service 是跟 Activity 並行 一個音樂播放程式若沒使用 Service, 即使按 home 鍵畫面離開之後, 音樂還是照播 如果再執行一次程式, 新撥放的音樂會跟先前撥放的一起撥, 最後程式就會出錯 執行中的程式完全看不到! 但是, 寫成 Service 就不同了

More information

ContextMenu

ContextMenu 作者 : 林致宇 日期 :2012/1/20 問題 : 如何建立 ContextMenu? 解答 : 什麼是 ContextMenu 呢? 下面兩張圖是 ContextMenu 的範例, 紅色框線中的選單即所謂的 ContextMenu, 可以視為 選單列表, 例如在左圖的 ContextMenu 中有兩個選項 : Action 1 與 Action 2, 按下 Action 1 可執行某些動作,

More information

Microsoft Word - Chap10.doc

Microsoft Word - Chap10.doc 感應器應用 10-1 感應器介紹 10-2 加速度感應器 10-3 方位感應器 10-4 接近感應器 10-5 光線感應器 10-1 感應器介紹 感應器 (sensor) 就是專門感應外界事物變化, 並將其變化轉為數值的一種接收器 日常生活中常見的感應器有 : 溫度計 ( 感應外界溫度變化 ) 指北針( 感應南北極磁場 ) 另外受歡迎的電視遊樂器 Wii, 其搖桿內藏加速度感應器, 可以讓 Wii

More information

單步除錯 (1/10) 打開 Android Studio, 點選 Start a new Android Studio project 建立專案 Application name 輸入 BMI 點下 Next 2 P a g e

單步除錯 (1/10) 打開 Android Studio, 點選 Start a new Android Studio project 建立專案 Application name 輸入 BMI 點下 Next 2 P a g e Android Studio Debugging 本篇教學除了最基本的中斷點教學之外, 還有條件式中斷的教學 條件式中斷是進階的除錯技巧, 在某些特定情況中, 我們有一個函數可能會被呼叫數次, 但是我們只希望在某種條件成立時才進行中斷, 進而觀察變數的狀態 而條件式中斷這項技巧正是符合這項需求 本教學分兩部分 單步除錯 (Page2~11, 共 10) 條件式中斷點 (Page12~17, 共 6)

More information

新・解きながら学ぶJava

新・解きながら学ぶJava 481! 41, 74!= 40, 270 " 4 % 23, 25 %% 121 %c 425 %d 121 %o 121 %x 121 & 199 && 48 ' 81, 425 ( ) 14, 17 ( ) 128 ( ) 183 * 23 */ 3, 390 ++ 79 ++ 80 += 93 + 22 + 23 + 279 + 14 + 124 + 7, 148, 16 -- 79 --

More information

用手機直接傳值不透過網頁連接, 來當作搖控器控制家電 ( 電視遙控器 ) 按下按鍵發送同時會回傳值來確定是否有送出 問題 :1. 應該是使用了太多 thread 導致在傳值上有問題 2. 一次按很多次按鈕沒辦法即時反應

用手機直接傳值不透過網頁連接, 來當作搖控器控制家電 ( 電視遙控器 ) 按下按鍵發送同時會回傳值來確定是否有送出 問題 :1. 應該是使用了太多 thread 導致在傳值上有問題 2. 一次按很多次按鈕沒辦法即時反應 專題進度 老師 : 趙啟時老師 學生 : 陳建廷 2013/10/13 用手機直接傳值不透過網頁連接, 來當作搖控器控制家電 ( 電視遙控器 ) 按下按鍵發送同時會回傳值來確定是否有送出 問題 :1. 應該是使用了太多 thread 導致在傳值上有問題 2. 一次按很多次按鈕沒辦法即時反應 程式碼 : package com.example.phone; import java.util.arraylist;

More information

CHAPTER VC#

CHAPTER VC# 1. 2. 3. 4. CHAPTER 2-1 2-2 2-3 2-4 VC# 2-5 2-6 2-7 2-8 Visual C# 2008 2-1 Visual C# 0~100 (-32768~+32767) 2 4 VC# (Overflow) 2-1 2-2 2-1 2-1.1 2-1 1 10 10!(1 10) 2-3 Visual C# 2008 10! 32767 short( )

More information

詞 彙 表 編 號 詞 彙 描 述 1 預 約 人 資 料 中 文 姓 名 英 文 姓 名 身 份 證 字 號 預 約 人 電 話 性 別 2 付 款 資 料 信 用 卡 別 信 用 卡 號 信 用 卡 有 效 日 期 3 住 房 條 件 入 住 日 期 退 房 日 期 人 數 房 間 數 量 入

詞 彙 表 編 號 詞 彙 描 述 1 預 約 人 資 料 中 文 姓 名 英 文 姓 名 身 份 證 字 號 預 約 人 電 話 性 別 2 付 款 資 料 信 用 卡 別 信 用 卡 號 信 用 卡 有 效 日 期 3 住 房 條 件 入 住 日 期 退 房 日 期 人 數 房 間 數 量 入 100 年 特 種 考 試 地 方 政 府 公 務 人 員 考 試 試 題 等 別 : 三 等 考 試 類 科 : 資 訊 處 理 科 目 : 系 統 分 析 與 設 計 一 請 參 考 下 列 旅 館 管 理 系 統 的 使 用 案 例 圖 (Use Case Diagram) 撰 寫 預 約 房 間 的 使 用 案 例 規 格 書 (Use Case Specification), 繪 出 入

More information

Dynamic Layout in Android

Dynamic Layout in Android Dynamic Layout in Android 建國科技大學資管系 饒瑞佶 2013/5 V1 Layout 多半都透過 res/layout/xml 格式設定來達成 Android 是 OOP, 所以可以動態產生 Layout 重點是 Layout 的階層關係 (Hierarchy) 需要處理對應事件 最後一樣用 setcontentview 加入 Layout 一 加入現有 Layout 中

More information

建模与图形思考

建模与图形思考 C03_c 基 於 軟 硬 整 合 觀 點 JNI: 从 C 调 用 Java 函 数 ( c) By 高 煥 堂 3 How-to: 基 於 軟 硬 整 合 觀 點 从 C 调 用 Java 函 数 如 果 控 制 点 摆 在 本 地 C 层, 就 会 常 常 1. 从 本 地 C 函 数 去 调 用 Java 函 数 ; 2. 从 本 地 C 函 数 去 存 取 Java 层 对 象 的 属 性

More information

1: public class MyOutputStream implements AutoCloseable { 3: public void close() throws IOException { 4: throw new IOException(); 5: } 6:

1: public class MyOutputStream implements AutoCloseable { 3: public void close() throws IOException { 4: throw new IOException(); 5: } 6: Chapter 15. Suppressed Exception CH14 Finally Block Java SE 7 try-with-resources JVM cleanup try-with-resources JVM cleanup cleanup Java SE 7 Throwable getsuppressed Throwable[] getsuppressed() Suppressed

More information

ShareText

ShareText 作者 : 林致宇 日期 :2012/1/23 問題 : 如何分享分享文字資訊給其它的應用程式? 解答 : 有時候我們可能會希望 我們的應用程式的資訊 能夠讓使用者分享出去, 讓使用者能夠將此資訊傳送簡訊給其好友或寄電子郵件的方式寄給其好友, 這份文件將示範如何寫出這樣的應用程式 本文件將產出兩個 App, 第一個 App 是 分享資料的來源, 名為 CopyPaste_Source, 功能非常簡單,

More information

任務二 : 產生 20 個有炸彈的磚塊, 放在隨機的位置編輯 Block 類別的程式碼 import greenfoot.; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo) Write a description of class

任務二 : 產生 20 個有炸彈的磚塊, 放在隨機的位置編輯 Block 類別的程式碼 import greenfoot.; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo) Write a description of class 踩地雷遊戲 高慧君南港高中 開啟專案 MineSweep 任務一 : 產生 30X20 個磚塊編輯 Table 類別的程式碼 import greenfoot.; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo) import java.util.arraylist; Write a description of class MyWorld

More information

Microsoft Word - 01.DOC

Microsoft Word - 01.DOC 第 1 章 JavaScript 简 介 JavaScript 是 NetScape 公 司 为 Navigator 浏 览 器 开 发 的, 是 写 在 HTML 文 件 中 的 一 种 脚 本 语 言, 能 实 现 网 页 内 容 的 交 互 显 示 当 用 户 在 客 户 端 显 示 该 网 页 时, 浏 览 器 就 会 执 行 JavaScript 程 序, 用 户 通 过 交 互 式 的

More information

untitled

untitled 1 Outline 數 料 數 數 列 亂數 練 數 數 數 來 數 數 來 數 料 利 料 來 數 A-Z a-z _ () 不 數 0-9 數 不 數 SCHOOL School school 數 讀 school_name schoolname 易 不 C# my name 7_eleven B&Q new C# (1) public protected private params override

More information

Android Fragment

Android Fragment Android Fragment 建國科技大學資管系饒瑞佶 2017/10 V1 Android 3.0 後才支援 Fragment 解決部分 App 適應螢幕大小的問題 它類似於 Activity, 可以像 Activity 可以擁有自己的版面設計, 也和 Activity 一樣有自己的生命週期 ( 具備 oncreate() oncreateview() 與 onpause() 方法 ) LifeCycle

More information

Database_001

Database_001 作者 : 林致宇日期 :2011/10/26 主要參考來源 : http://www.reigndesign.com/blog/using-your-own-sqlite-database-in-android-applicat ions/ 問題 : 如在存取一個已經建立好的資料庫? 解答 : 有一些應用程式會需要讀取已經建立好的資料庫, 例如一個試題測驗應用程式, 裡面的試題可能已經於電腦上, 使用任何的

More information

實作SQLiteOpenHelper類別

實作SQLiteOpenHelper類別 SQLiteOpenHelper 類別存取 SQLite 建國科技大學資管系 饒瑞佶 2013/5 V1 Android 連結資料庫 MySQL SQL Server Web Service 遠端資料庫 Internet Intranet Android SQLite 單機資料庫 Android vs. SQLite 透過 SQLiteOpenHelper 類別來操作 建立資料庫 ( 建構子 ) 建立資料表

More information

建立Android新專案

建立Android新專案 經濟部工業局 Android 智慧型手機程式設計實務應用班 Android WebService 建國科技大學資管系 饒瑞佶 2012/4 WebService 需要 ksoap2-android-assembly-2.5.2-jar-withdependencies.jar 或 ksoap2-android-assembly-2.5.2-jar-withdependencies_timeout1.jar

More information

運算子多載 Operator Overloading

運算子多載 Operator Overloading 多型 Polymorphism 講師 : 洪安 1 多型 編譯時期多型 ( 靜態多型 ) function overloading 如何正確呼叫同名的函數? 利用參數個數與型態 operator overloading 其實同 function overloading 執行時期多型 ( 或動態多型 ) 如何正確呼叫不同物件的相同名稱的成員函數 利用繼承與多型 2 子類別與父類別物件間的指定 (assignment)

More information

Chapter 8 影音多媒體 作者 : 林致宇 在上一章中筆者有提到一個 Android 應用程式是由四個構成要素所組成的 : Activity, Broadcast Receiver, Service 與 Content Provider, 我們也已經詳細介紹了 Activity 與 Broad

Chapter 8 影音多媒體 作者 : 林致宇 在上一章中筆者有提到一個 Android 應用程式是由四個構成要素所組成的 : Activity, Broadcast Receiver, Service 與 Content Provider, 我們也已經詳細介紹了 Activity 與 Broad Chapter 8 影音多媒體 作者 : 林致宇 在上一章中筆者有提到一個 Android 應用程式是由四個構成要素所組成的 : Activity, Broadcast Receiver, Service 與 Content Provider, 我們也已經詳細介紹了 Activity 與 Broadcast Receiver, 然而再繼續介紹下去之前, 我們要先換個主題, 來討論影音相關的類別, 為什麼要先談論這個主題呢?

More information

エスポラージュ株式会社 住所 : 東京都江東区大島 東急ドエルアルス大島 HP: ******************* * 关于 Java 测试试题 ******

エスポラージュ株式会社 住所 : 東京都江東区大島 東急ドエルアルス大島 HP:  ******************* * 关于 Java 测试试题 ****** ******************* * 关于 Java 测试试题 ******************* 問 1 运行下面的程序, 选出一个正确的运行结果 public class Sample { public static void main(string[] args) { int[] test = { 1, 2, 3, 4, 5 ; for(int i = 1 ; i System.out.print(test[i]);

More information

建模与图形思考

建模与图形思考 F06_c 观摩 :ContentProvider 基於軟硬整合觀點 架构與 DB 引擎移植方法 ( c) By 高煥堂 4 通用性基类 ContentProvider 基於軟硬整合觀點 的使用范例 刚才的范例里, 我们直接使用 DataPersist 类的接口来与 SQLite 沟通 本节将替 DataPersist 配上 ContentProvider 基类, 让 Client 能透过 ContentProvider

More information

建立Android新專案

建立Android新專案 Android 智 慧 型 手 機 程 式 設 計 Android WebService 建 國 科 技 大 學 資 管 系 饒 瑞 佶 2012/4 V1 2012/8 V2 2013/5 V3 2014/10 v4 提 醒 這 節 的 內 容 針 對 的 是 MS 的 Web Service 或 是 使 用 SOAP(Simple Object Access Protocol) 標 準 建 立

More information

首先讓我們來看 SimpleGoogleSearch.java, 程式碼如下所示 : 1 public class SimpleGoogleSearch extends Activity { 2 3 EditText et_searchstr; 4 Button btn_search; 5

首先讓我們來看 SimpleGoogleSearch.java, 程式碼如下所示 : 1 public class SimpleGoogleSearch extends Activity { 2 3 EditText et_searchstr; 4 Button btn_search; 5 Chapter 13 網際網路 作者 : 林致孙 網路已成為現今大部份人使用電腦的最大目的, 我們也常利用網路來查詢一些生活資訊, 然而有時當我們想查詢某些資料, 例如火車時刻表, 這時人卻在戶外, 就會感到非常不便, 手機上網解決了這個問題, 因此上網可以說是一個智慧型手機應該具備的基本功能 在這一章中我們將學習一些跟網際網路相關的應用程式, 包含了網頁的瀏覽以及檔案的傳輸 13.1 網頁瀏覽 網頁瀏覽可以說是大部份人上網的最主要行為之一,

More information

投影片 1

投影片 1 資料庫管理程式 ( 補充教材 -Part2) 使用 ADO.NET 連結資料庫 ( 自行撰寫程式碼 以實現新增 刪除 修改等功能 ) Private Sub InsertButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles InsertButton.Click ' 宣告相關的 Connection

More information

res/layout 目录下的 main.xml 源码 : <?xml version="1.0" encoding="utf 8"?> <TabHost android:layout_height="fill_parent" xml

res/layout 目录下的 main.xml 源码 : <?xml version=1.0 encoding=utf 8?> <TabHost android:layout_height=fill_parent xml 拓展训练 1- 界面布局 1. 界面布局的重要性做应用程序, 界面是最基本的 Andorid 的界面, 需要写在 res/layout 的 xml 里面, 一般情况下一个 xml 对应一个界面 Android 界面布局有点像写 html( 连注释代码的方式都一样 ), 要先给 Android 定框架, 然后再在框架里面放控件,Android 提供了几种框架,AbsoluteLayout,LinearLayout,

More information

Microsoft Word - A201103-528_1299547322.doc

Microsoft Word - A201103-528_1299547322.doc 5 10 15 20 25 30 基 于 Android 平 台 的 人 机 交 互 的 研 究 与 实 现 郁 亚 男 ( 北 京 邮 电 大 学 软 件 学 院, 北 京 100876) 摘 要 : 随 着 计 算 的 发 展, 计 算 变 得 越 来 越 自 由, 在 资 源 使 用 方 面 也 越 来 越 灵 活 移 动 终 端 由 于 无 线 通 信 网 络 传 输 速 率 的 提 高,

More information

Android + NFC

Android + NFC Android + NFC 建國科技大學資管系饒瑞佶 2017/3 v1 讀取 Tag UUID Android 2.3.3 (API Level 10) 才有支援完整的 NFC 功能 只要 NFC 相容都讀的到 (NFC 或 Mifare) 建立新專案修改 AndroidManifest.xml 加入 , 如果有 NFC Tag 進入感測範圍, 本 App 也會變成可處理的

More information

0 0 = 1 0 = 0 1 = = 1 1 = 0 0 = 1

0 0 = 1 0 = 0 1 = = 1 1 = 0 0 = 1 0 0 = 1 0 = 0 1 = 0 1 1 = 1 1 = 0 0 = 1 : = {0, 1} : 3 (,, ) = + (,, ) = + + (, ) = + (,,, ) = ( + )( + ) + ( + )( + ) + = + = = + + = + = ( + ) + = + ( + ) () = () ( + ) = + + = ( + )( + ) + = = + 0

More information

46 2011 11 467 數位遊戲式學習系統 7 2011 11 467 47 3 DBGameSys 48 2011 11 467 正規化資料模組 如何配置並儲存電子化資料 以 便減少資料被重覆儲存的程序 DBGameSys的主要功能模組包 學習者 審核評分模組 含 正規化資料模組 審核評分 模組 高分列表模組3大區塊 系統資料庫 在正規化資料模組的執行 高分列表模組 過程中 先要求學習者瀏覽遊戲

More information

RecyclerView and CardVew

RecyclerView and CardVew RecyclerView and CardView 建國科技大學資管系饒瑞佶 2017/10 V1 CardView CardView A CardView is a ViewGroup. Like any other ViewGroup, it can be added to youractivity or Fragment using a layout XML file. To create an

More information

( 含 要 ) 1-2 用 或 雇 用, 抑 或 有 無 俸 給 文 職 或 武 職, 政 官 或 事 官 均 屬 之, 其 不 以 具 備 人 資 格 為 限, 因 此 屬 於 最 廣 義 之 念 四 廣 義 念 之 依 服 24 條 之 規 定 : 本 於 受 有 俸 給 之 文 武 職, 及

( 含 要 ) 1-2 用 或 雇 用, 抑 或 有 無 俸 給 文 職 或 武 職, 政 官 或 事 官 均 屬 之, 其 不 以 具 備 人 資 格 為 限, 因 此 屬 於 最 廣 義 之 念 四 廣 義 念 之 依 服 24 條 之 規 定 : 本 於 受 有 俸 給 之 文 武 職, 及 本 學 習 重 點 研 讀 首 先 應 釐 清 不 同 規 對 與 職 人 念 的 定 義, 其 中 之 定 義 從 最 廣 義 廣 義 狹 義 到 最 狹 義 的 人, 都 會 牽 涉 到 規 適 用 上 的 不 同, 而 職 人 涵 蓋 範 圍 比 更 廣, 讀 者 應 注 意 兩 者 之 間 的 區 別 建 議 讀 者 與 考 生 於 開 始 研 讀 之 際, 利 用 本 之 內 容 確 實

More information

The golden pins of the PCI card can be oxidized after months or years

The golden pins of the PCI card can be oxidized after months or years Q. 如何在 LabWindows/CVI 編譯 DAQ Card 程式? A: 請參考至下列步驟 : 步驟 1: 安裝驅動程式 1. 安裝 UniDAQ 驅動程式 UniDAQ 驅動程式下載位置 : CD:\NAPDOS\PCI\UniDAQ\DLL\Driver\ ftp://ftp.icpdas.com/pub/cd/iocard/pci/napdos/pci/unidaq/dll/driver/

More information

1 4 1.1 4 1.2..4 2..4 2.1..4 3.4 3.1 Java.5 3.1.1..5 3.1.2 5 3.1.3 6 4.6 4.1 6 4.2.6 5 7 5.1..8 5.1.1 8 5.1.2..8 5.1.3..8 5.1.4..9 5.2..9 6.10 6.1.10

1 4 1.1 4 1.2..4 2..4 2.1..4 3.4 3.1 Java.5 3.1.1..5 3.1.2 5 3.1.3 6 4.6 4.1 6 4.2.6 5 7 5.1..8 5.1.1 8 5.1.2..8 5.1.3..8 5.1.4..9 5.2..9 6.10 6.1.10 Java V1.0.1 2007 4 10 1 4 1.1 4 1.2..4 2..4 2.1..4 3.4 3.1 Java.5 3.1.1..5 3.1.2 5 3.1.3 6 4.6 4.1 6 4.2.6 5 7 5.1..8 5.1.1 8 5.1.2..8 5.1.3..8 5.1.4..9 5.2..9 6.10 6.1.10 6.2.10 6.3..10 6.4 11 7.12 7.1

More information

(Microsoft Word - wes _\246p\246\363\250\317\245\316LED\277O\305\343\245\334\252\254\272A.doc)

(Microsoft Word - wes _\246p\246\363\250\317\245\316LED\277O\305\343\245\334\252\254\272A.doc) 作者 Amber 版本 1.0.0 日期 2012/04/25 頁數 1/7 如何使用 LED 燈顯示狀態? 適用於 : 平台 作業系統版本 XPAC utility 版本 XP-8000 系列 N/A N/A XP-8000-Atom 系列 WES2009 所有版本 N/A: Not applicable to this platform and OS. 注意! 欲變更系統的任何設定之前, 請先關閉

More information

新版 明解C++入門編

新版 明解C++入門編 511!... 43, 85!=... 42 "... 118 " "... 337 " "... 8, 290 #... 71 #... 413 #define... 128, 236, 413 #endif... 412 #ifndef... 412 #if... 412 #include... 6, 337 #undef... 413 %... 23, 27 %=... 97 &... 243,

More information

Microsoft PowerPoint - VB14.ppt

Microsoft PowerPoint - VB14.ppt VB 列表盒 LISTBOX 應用 資科系 林偉川 執行畫面 1 2 1 重要屬性 LISTBOX 物件 (VB6) 新增至 LISTBOX 物件中 ADDITEM 自 LISTBOX 物件中刪除選取物件 REMOVEITEM 自 LISTBOX 物件中取出選取物件 ListIndex 顯示 LISTBOX 物件中紀錄個數 Listcount 3 LISTBOX 物件 (VB.NET) 重要屬性 新增至

More information

X6-04_How_do_I_write_a_com_port_communicate_program_of_XPAC_tc

X6-04_How_do_I_write_a_com_port_communicate_program_of_XPAC_tc Author WeiKai Version 1.0.0 Date 2013/4/14 Page 1/11 我如何在 XPAC 上建立一個 COM port 通訊程式 Applies to: Platform OS version XPAC utility version XPAC series All versions (WinCE6) All versions XPAC SDK 提供 XPAC 結合

More information

Microsoft PowerPoint - App與微控器整合.pptx

Microsoft PowerPoint - App與微控器整合.pptx 1 2 Outline APP 與微控器整合 2017 中山大學電機實驗營 App 開發環境 -Android Studio 介紹 App 開發 實驗營 App 流程 3 4 Android Studio 介紹 Android Studio 是一個為 Android 平台開發程式的整合式開發環境, 可供開發者免費使用, 並在 Windows OS X Linux 平台上均可執行 專案結構 一個專案下有

More information

Microsoft PowerPoint - C_Structure.ppt

Microsoft PowerPoint - C_Structure.ppt 結構與其他資料型態 Janet Huang 5-1 結構的宣告 struct 結構名稱 struct 結構名稱變數 1, 變數 2,, 變數 m; struct 結構名稱 變數 1, 變數 2,, 變數 m; student; student; 5-2 1 結構變數初值的設定 struct 結構名稱 struct 結構名稱變數 = 初值 1, 初值 2,, 初值 n student="janet","1350901",100,95

More information

<4D6963726F736F667420506F776572506F696E74202D20332D322E432B2BC3E6CFF2B6D4CFF3B3CCD0F2C9E8BCC6A1AAD6D8D4D8A1A2BCCCB3D0A1A2B6E0CCACBACDBEDBBACF2E707074>

<4D6963726F736F667420506F776572506F696E74202D20332D322E432B2BC3E6CFF2B6D4CFF3B3CCD0F2C9E8BCC6A1AAD6D8D4D8A1A2BCCCB3D0A1A2B6E0CCACBACDBEDBBACF2E707074> 程 序 设 计 实 习 INFO130048 3-2.C++ 面 向 对 象 程 序 设 计 重 载 继 承 多 态 和 聚 合 复 旦 大 学 计 算 机 科 学 与 工 程 系 彭 鑫 pengxin@fudan.edu.cn 内 容 摘 要 方 法 重 载 类 的 继 承 对 象 引 用 和 拷 贝 构 造 函 数 虚 函 数 和 多 态 性 类 的 聚 集 复 旦 大 学 计 算 机 科 学

More information

(TestFailure) JUnit Framework AssertionFailedError JUnit Composite TestSuite Test TestSuite run() run() JUnit

(TestFailure) JUnit Framework AssertionFailedError JUnit Composite TestSuite Test TestSuite run() run() JUnit Tomcat Web JUnit Cactus JUnit Java Cactus JUnit 26.1 JUnit Java JUnit JUnit Java JSP Servlet JUnit Java Erich Gamma Kent Beck xunit JUnit boolean JUnit Java JUnit Java JUnit Java 26.1.1 JUnit JUnit How

More information

javaexample-02.pdf

javaexample-02.pdf n e w. s t a t i c s t a t i c 3 1 3 2 p u b l i c p r i v a t e p r o t e c t e d j a v a. l a n g. O b j e c t O b j e c t Rect R e c t x 1 y 1 x 2 y 2 R e c t t o S t r i n g ( ) j a v a. l a n g. O

More information

《大话设计模式》第一章

《大话设计模式》第一章 第 1 章 代 码 无 错 就 是 优? 简 单 工 厂 模 式 1.1 面 试 受 挫 小 菜 今 年 计 算 机 专 业 大 四 了, 学 了 不 少 软 件 开 发 方 面 的 东 西, 也 学 着 编 了 些 小 程 序, 踌 躇 满 志, 一 心 要 找 一 个 好 单 位 当 投 递 了 无 数 份 简 历 后, 终 于 收 到 了 一 个 单 位 的 面 试 通 知, 小 菜 欣 喜

More information

Chapter 9: Objects and Classes

Chapter 9: Objects and Classes Java application Java main applet Web applet Runnable Thread CPU Thread 1 Thread 2 Thread 3 CUP Thread 1 Thread 2 Thread 3 ,,. (new) Thread (runnable) start( ) CPU (running) run ( ) blocked CPU sleep(

More information

untitled

untitled JavaEE+Android - 6 1.5-2 JavaEE web MIS OA ERP BOSS Android Android Google Map office HTML CSS,java Android + SQL Sever JavaWeb JavaScript/AJAX jquery Java Oracle SSH SSH EJB+JBOSS Android + 1. 2. IDE

More information

The Embedded computing platform

The Embedded computing platform 嵌入式系統及實驗 Embedded System and Experiment 詹曉龍 長庚大學電機系 Java 的類別與物件 : 宣告類別 建構子 public class Customer { private String name; private String address; // Customer 類別宣告 // 成員資料 public int age; // 建構子 : 使用參數設定成員資料初始值

More information

预览图 : (2) 在 SelectCity.java 中增加控件, 用于绑定 select_city 文件的 ListView, TextView,EditTest 等控件 代码和注释如下 :

预览图 : (2) 在 SelectCity.java 中增加控件, 用于绑定 select_city 文件的 ListView, TextView,EditTest 等控件 代码和注释如下 : EditText 实现城市搜索 1801210778 邹宇航 摘要 : 使用 EditText 实现搜索城市的功能, 以此为依据更新 ListView 1. 效果图 : 2. 主要步骤 (1) 在 select-city.xml 布局文件中中添加 EditText 控件用作搜索框, 然后添加 ListView 控件用来显示城市名字内容 代码如下 : 预览图 : (2) 在 SelectCity.java

More information

幻灯片 1

幻灯片 1 Delivering accurate maps to Chinese Android users 为中国安卓用户提供准确的地图服务 Work at Mapbox includes: Android apps, demos, starter kits, documentation, support, syncing Android team with other departments, etc.

More information

3.1 num = 3 ch = 'C' 2

3.1 num = 3 ch = 'C' 2 Java 1 3.1 num = 3 ch = 'C' 2 final 3.1 final : final final double PI=3.1415926; 3 3.2 4 int 3.2 (long int) (int) (short int) (byte) short sum; // sum 5 3.2 Java int long num=32967359818l; C:\java\app3_2.java:6:

More information

untitled

untitled 1 Outline 料 類 說 Tang, Shih-Hsuan 2006/07/26 ~ 2006/09/02 六 PM 7:00 ~ 9:30 聯 ives.net@gmail.com www.csie.ntu.edu.tw/~r93057/aspnet134 度 C# 力 度 C# Web SQL 料 DataGrid DataList 參 ASP.NET 1.0 C# 例 ASP.NET 立

More information

KillTest 质量更高 服务更好 学习资料 半年免费更新服务

KillTest 质量更高 服务更好 学习资料   半年免费更新服务 KillTest 质量更高 服务更好 学习资料 http://www.killtest.cn 半年免费更新服务 Exam : 310-065Big5 Title : Sun Certified Programmer for the Java 2 Platform, SE 6.0 Version : Demo 1 / 14 1. 35. String #name = "Jane Doe"; 36. int

More information

untitled

untitled 1 Outline 類别 欄 (1) 類 類 狀 更 易 類 理 若 類 利 來 利 using 來 namespace 類 ; (2) namespace IBM class Notebook namespace Compaq class Notebook 類别 類 來 類 列 欄 (field) (property) (method) (event) 類 例 立 來 車 類 類 立 車 欄 料

More information

安裝這個應用程式, 若讀者想瞭解更多關於 許可 的說明或者想知道 Android 系統提供了哪些 許可, 可至 Android 開發者網站閱讀相關文件 [2][3] 在這個應用程式中, 我們需要得到兩個許可, 第一個是 ACCESS_FINE_LOCATION, 應用程式得到許可後會獲得存取精確位置

安裝這個應用程式, 若讀者想瞭解更多關於 許可 的說明或者想知道 Android 系統提供了哪些 許可, 可至 Android 開發者網站閱讀相關文件 [2][3] 在這個應用程式中, 我們需要得到兩個許可, 第一個是 ACCESS_FINE_LOCATION, 應用程式得到許可後會獲得存取精確位置 Chapter 9 定位與 Google 地圖 作者 : 林致宇 定位與 Google 地圖的結合產生了許多的應用, 除了一般人較為熟知的行車導航系統之外, 位置感知服務 (Location-Based Service, LBS) 也帶來龐大的商機, 位置感知服務的應用範圍很廣泛, 例如找出使用者附近的餐廳 停車場等資訊都是屬於位置感知服務 此外導覽系統也是很常見的一種應用, 例如校園導覽系統 博物館導覽系統

More information

EJB-Programming-4-cn.doc

EJB-Programming-4-cn.doc EJB (4) : (Entity Bean Value Object ) JBuilder EJB 2.x CMP EJB Relationships JBuilder EJB Test Client EJB EJB Seminar CMP Entity Beans Session Bean J2EE Session Façade Design Pattern Session Bean Session

More information

雲端 Cloud Computing 技術指南 運算 應用 平台與架構 10/04/15 11:55:46 INFO 10/04/15 11:55:53 INFO 10/04/15 11:55:56 INFO 10/04/15 11:56:05 INFO 10/04/15 11:56:07 INFO

雲端 Cloud Computing 技術指南 運算 應用 平台與架構 10/04/15 11:55:46 INFO 10/04/15 11:55:53 INFO 10/04/15 11:55:56 INFO 10/04/15 11:56:05 INFO 10/04/15 11:56:07 INFO CHAPTER 使用 Hadoop 打造自己的雲 8 8.3 測試 Hadoop 雲端系統 4 Nodes Hadoop Map Reduce Hadoop WordCount 4 Nodes Hadoop Map/Reduce $HADOOP_HOME /home/ hadoop/hadoop-0.20.2 wordcount echo $ mkdir wordcount $ cd wordcount

More information

使 用 Java 语 言 模 拟 保 险 箱 容 量 门 板 厚 度 箱 体 厚 度 属 性 锁 具 类 型 开 保 险 箱 关 保 险 箱 动 作 存 取 款

使 用 Java 语 言 模 拟 保 险 箱 容 量 门 板 厚 度 箱 体 厚 度 属 性 锁 具 类 型 开 保 险 箱 关 保 险 箱 动 作 存 取 款 JAVA 程 序 设 计 ( 肆 ) 徐 东 / 数 学 系 使 用 Java 语 言 模 拟 保 险 箱 容 量 门 板 厚 度 箱 体 厚 度 属 性 锁 具 类 型 开 保 险 箱 关 保 险 箱 动 作 存 取 款 使 用 Java class 代 表 保 险 箱 public class SaveBox 类 名 类 类 体 实 现 封 装 性 使 用 class SaveBox 代 表 保

More information

840 提示 Excel - Excel -- Excel (=) Excel ch0.xlsx H5 =D5+E5+F5+G5 (=) = - Excel 00

840 提示 Excel - Excel -- Excel (=) Excel ch0.xlsx H5 =D5+E5+F5+G5 (=) = - Excel 00 Excel - - Excel - -4-5 840 提示 Excel - Excel -- Excel (=) Excel ch0.xlsx H5 =D5+E5+F5+G5 (=) = - Excel 00 ( 0 ) 智慧標籤 相關說明提示 -5 -- Excel 4 5 6 7 8 + - * / % ^ = < >= & 9 0 (:) (,) ( ) Chapter - :,

More information

Python a p p l e b e a r c Fruit Animal a p p l e b e a r c 2-2

Python a p p l e b e a r c Fruit Animal a p p l e b e a r c 2-2 Chapter 02 變數與運算式 2.1 2.1.1 2.1.2 2.1.3 2.1.4 2.2 2.2.1 2.2.2 2.2.3 type 2.2.4 2.3 2.3.1 print 2.3.2 input 2.4 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 + 2.4.6 Python Python 2.1 2.1.1 a p p l e b e a r c 65438790

More information

投影片 1

投影片 1 Chapter 13 Android 實戰演練 線上匯率查詢 線上匯率查詢 本節範例將實作一個簡單的線上費率查詢, 利用 Url 查詢台灣銀行的即時匯率, 欲查詢的網址為 http://rate.bot.com.tw/pages/static/uip003.zh- TW.htm 此網頁中每隔幾分鐘會更新一次匯率, 所以範例程式在一開啟時會抓取此網頁並將網頁內容解析後將匯率資料取出 線上匯率查詢 台灣銀行線上即時匯率查詢

More information

7 TextView tv = (TextView)findViewById(R.id.tv_birthday); 8 9 Context otherapp = null; try { 12 otherapp = createpackagecontext("lincyu.horoscop

7 TextView tv = (TextView)findViewById(R.id.tv_birthday); 8 9 Context otherapp = null; try { 12 otherapp = createpackagecontext(lincyu.horoscop Chapter 12 資料分享 作者 : 林致孙 上一章中我們學到了資料的儲存方式, 也瞭解資料會依應用程式的 Package name 儲存於適當的資料夾內, 然而 Android 並沒有一個共同的儲存空間讓所有應用程式存取, 因此若要讓其它的應用程式使用我的資料, 就必須使用一些技巧, 本章主要在學習資料分享的方式 在先前的章節中已經數次提到, 一個 Android 應用程式是由四個構成要素所組成的

More information

Microsoft PowerPoint - Lab 2-3 Android Google Maps.ppt [相容模式]

Microsoft PowerPoint - Lab 2-3 Android Google Maps.ppt [相容模式] 車輛定位與電子地圖整合服務 定位與 Google Maps Network Optimization Lab Department of Computer Science National Chiao Tung University 1 定位與 Google Maps Lab 簡介 : 路徑軌跡記錄程式 Google Maps 程式技巧 取得目前位置經緯度 建立 Google Maps 標示目前位置

More information

( )... 5 ( ) ( )

( )... 5 ( ) ( ) 2016 大學校院招收大陸地區學生聯合招生委員會 71005 臺南市永康區南臺街 1 號 E-mail:rusen@stust.edu.tw WEB:http://rusen.stust.edu.tw TEL:+886-6-2435163 FAX:+886-6-2435165 2 0 1 6 0 1 1 9 2016... 2... 3... 5 ( )... 5 ( )... 5 1... 6 2...

More information

Microsoft Word - 第3章.doc

Microsoft Word - 第3章.doc Java C++ Pascal C# C# if if if for while do while foreach while do while C# 3.1.1 ; 3-1 ischeck Test() While ischeck while static bool ischeck = true; public static void Test() while (ischeck) ; ischeck

More information

前言 C# C# C# C C# C# C# C# C# microservices C# More Effective C# More Effective C# C# C# C# Effective C# 50 C# C# 7 Effective vii

前言 C# C# C# C C# C# C# C# C# microservices C# More Effective C# More Effective C# C# C# C# Effective C# 50 C# C# 7 Effective vii 前言 C# C# C# C C# C# C# C# C# microservices C# More Effective C# More Effective C# C# C# C# Effective C# 50 C# C# 7 Effective vii C# 7 More Effective C# C# C# C# C# C# Common Language Runtime CLR just-in-time

More information

TextView: 用來顯示 月 EditText: 讓使用者輸入日期 Button: 使用者按下 得知星座 的按鈕後, 可以查詢自己的星座, 程式會切換到另一個頁陎, 顯示星座的圖示及相關資訊 規畫好使用者介陎後, 我們就可以開始撰寫 XML 檔, 請讀者自行參考光碟內的檔案 \ 範例程式 \Ch

TextView: 用來顯示 月 EditText: 讓使用者輸入日期 Button: 使用者按下 得知星座 的按鈕後, 可以查詢自己的星座, 程式會切換到另一個頁陎, 顯示星座的圖示及相關資訊 規畫好使用者介陎後, 我們就可以開始撰寫 XML 檔, 請讀者自行參考光碟內的檔案 \ 範例程式 \Ch Chapter 6 Activity 作者 : 林致孙 一個手機應用程式若只有一個畫陎, 程式能達成的功能實在有限, 因此一個手機應用程式通常需要在不同的畫陎間切換, 以便提供多樣的功能, 例如一個通訊錄應用程式, 可能會有一個畫陎是顯示所有聯絡人的姓名, 當使用者點選某個聯絡人時, 應用程式會切換到另一個畫陎, 讓使用者可以編輯該聯絡人的電話 地址等個人資訊 在第四章時, 我們學過利用 setcontentview

More information

Mac Java import com.apple.mrj.*;... public class MyFirstApp extends JFrame implements ActionListener, MRJAboutHandler, MRJQuitHandler {... public MyFirstApp() {... MRJApplicationUtils.registerAboutHandler(this);

More information

CC213

CC213 : (Ken-Yi Lee), E-mail: feis.tw@gmail.com 49 [P.51] C/C++ [P.52] [P.53] [P.55] (int) [P.57] (float/double) [P.58] printf scanf [P.59] [P.61] ( / ) [P.62] (char) [P.65] : +-*/% [P.67] : = [P.68] : ,

More information

01_Service

01_Service 移动平台应用软件开发 Service 主讲 : 张齐勋 zhangqx@ss.pku.edu.cn 移动平台应用软件开发 课程建设小组 北京大学 二零一七年 什么是 Service 与 Activity 一样, 同属 Android 基本组件 后台运行, 不与用户交互, 没有可视化界面 最常见的 Service 如 : 在后台播放歌曲 后台执行文件的下载 同样需在 AndroidManifest.xml

More information

untitled

untitled 1 行 行 行 行.NET 行 行 類 來 行 行 Thread 類 行 System.Threading 來 類 Thread 類 (1) public Thread(ThreadStart start ); Name 行 IsAlive 行 行狀 Start 行 行 Suspend 行 Resume 行 行 Thread 類 (2) Sleep 行 CurrentThread 行 ThreadStart

More information

Fun Time (1) What happens in memory? 1 i n t i ; 2 s h o r t j ; 3 double k ; 4 char c = a ; 5 i = 3; j = 2; 6 k = i j ; H.-T. Lin (NTU CSIE) Referenc

Fun Time (1) What happens in memory? 1 i n t i ; 2 s h o r t j ; 3 double k ; 4 char c = a ; 5 i = 3; j = 2; 6 k = i j ; H.-T. Lin (NTU CSIE) Referenc References (Section 5.2) Hsuan-Tien Lin Deptartment of CSIE, NTU OOP Class, March 15-16, 2010 H.-T. Lin (NTU CSIE) References OOP 03/15-16/2010 0 / 22 Fun Time (1) What happens in memory? 1 i n t i ; 2

More information

Java java.lang.math Java Java.util.Random : ArithmeticException int zero = 0; try { int i= 72 / zero ; }catch (ArithmeticException e ) { // } 0,

Java java.lang.math Java Java.util.Random : ArithmeticException int zero = 0; try { int i= 72 / zero ; }catch (ArithmeticException e ) { // } 0, http://debut.cis.nctu.edu.tw/~chi Java java.lang.math Java Java.util.Random : ArithmeticException int zero = 0; try { int i= 72 / zero ; }catch (ArithmeticException e ) { // } 0, : POSITIVE_INFINITY NEGATIVE_INFINITY

More information

KillTest 质量更高 服务更好 学习资料 半年免费更新服务

KillTest 质量更高 服务更好 学习资料   半年免费更新服务 KillTest 质量更高 服务更好 学习资料 http://www.killtest.cn 半年免费更新服务 Exam : 310-055Big5 Title : Sun Certified Programmer for the Java 2 Platform.SE 5.0 Version : Demo 1 / 22 1. 11. public static void parse(string str)

More information

Microsoft Word - 投影片ch11

Microsoft Word - 投影片ch11 Java2 JDK5.0 教學手冊第三版洪維恩編著博碩文化出版書號 pg20210 第十一章抽象類別與介面 本章學習目標認識抽象類別學習介面的使用認識多重繼承與介面的延伸 抽象類別與介面 11-2 11.1 抽象類別 抽象類別的目的是要依據它的格式來修改並建立新的類別 11.1.1 定義抽象類別 定義抽象類別的語法如下 : abstract class 類別名稱 { 宣告資料成員 ; // 定義抽象類別

More information

移动平台期末展示

移动平台期末展示 移动平台开发作品展示 周芳张文杰谢殊凡 作品简介 一 作品简介 Ø 应用名称 : 一笔画 Ø 功能 : 随机生成一笔画图案 玩家可以在屏幕上描绘图案, 程序会判定绘制成功或者失败 Ø 设计目的 : 制作一个休闲益智类的小游戏 设计思路 二 设计思路 Ø 1. 自动生成随机的一笔画 奇顶点 : 指数为奇数的顶点 偶顶点 : 指数为偶数的顶点 一笔画图形的必要条件是 : 奇顶点数目是 0 或者 2 Ø

More information

EJB-Programming-3.PDF

EJB-Programming-3.PDF :, JBuilder EJB 2.x CMP EJB Relationships JBuilder EJB Test Client EJB EJB Seminar CMP Entity Beans Value Object Design Pattern J2EE Design Patterns Value Object Value Object Factory J2EE EJB Test Client

More information

OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数

OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数 复习 类的复用 组合 (composition): has-a 关系 class MyType { public int i; public double d; public char c; public void set(double

More information

FY.DOC

FY.DOC 高 职 高 专 21 世 纪 规 划 教 材 C++ 程 序 设 计 邓 振 杰 主 编 贾 振 华 孟 庆 敏 副 主 编 人 民 邮 电 出 版 社 内 容 提 要 本 书 系 统 地 介 绍 C++ 语 言 的 基 本 概 念 基 本 语 法 和 编 程 方 法, 深 入 浅 出 地 讲 述 C++ 语 言 面 向 对 象 的 重 要 特 征 : 类 和 对 象 抽 象 封 装 继 承 等 主

More information

Microsoft Word - ch04三校.doc

Microsoft Word - ch04三校.doc 4-1 4-1-1 (Object) (State) (Behavior) ( ) ( ) ( method) ( properties) ( functions) 4-2 4-1-2 (Message) ( ) ( ) ( ) A B A ( ) ( ) ( YourCar) ( changegear) ( lowergear) 4-1-3 (Class) (Blueprint) 4-3 changegear

More information

2 WF 1 T I P WF WF WF WF WF WF WF WF 2.1 WF WF WF WF WF WF

2 WF 1 T I P WF WF WF WF WF WF WF WF 2.1 WF WF WF WF WF WF Chapter 2 WF 2.1 WF 2.2 2. XAML 2. 2 WF 1 T I P WF WF WF WF WF WF WF WF 2.1 WF WF WF WF WF WF WF WF WF WF EDI API WF Visual Studio Designer 1 2.1 WF Windows Workflow Foundation 2 WF 1 WF Domain-Specific

More information

OOP with Java 通知 Project 4: 4 月 19 日晚 9 点

OOP with Java 通知 Project 4: 4 月 19 日晚 9 点 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 4 月 19 日晚 9 点 复习 类的复用 组合 (composition): has-a 关系 class MyType { public int i; public double d; public char c; public void set(double x) { d

More information

CHAPTER 1

CHAPTER 1 CHAPTER 1 1-1 System Development Life Cycle; SDLC SDLC Waterfall Model Shelly 1995 1. Preliminary Investigation 2. System Analysis 3. System Design 4. System Development 5. System Implementation and Evaluation

More information

Java Access 5-1 Server Client Client Server Server Client 5-2 DataInputStream Class java.io.datainptstream (extends) FilterInputStream InputStream Obj

Java Access 5-1 Server Client Client Server Server Client 5-2 DataInputStream Class java.io.datainptstream (extends) FilterInputStream InputStream Obj Message Transition 5-1 5-2 DataInputStream Class 5-3 DataOutputStream Class 5-4 PrintStream Class 5-5 (Message Transition) (Exercises) Java Access 5-1 Server Client Client Server Server Client 5-2 DataInputStream

More information

C/C++ - 字符输入输出和字符确认

C/C++ - 字符输入输出和字符确认 C/C++ Table of contents 1. 2. getchar() putchar() 3. (Buffer) 4. 5. 6. 7. 8. 1 2 3 1 // pseudo code 2 read a character 3 while there is more input 4 increment character count 5 if a line has been read,

More information

SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 "odps-sdk" 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基

SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 odps-sdk 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基 开放数据处理服务 ODPS SDK SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 "odps-sdk" 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基础功能的主体接口, 搜索关键词 "odpssdk-core" 一些

More information

ebook39-6

ebook39-6 6 first-in-first-out, FIFO L i n e a r L i s t 3-1 C h a i n 3-8 5. 5. 3 F I F O L I F O 5. 5. 6 5. 5. 6.1 [ ] q u e n e ( r e a r ) ( f r o n t 6-1a A 6-1b 6-1b D C D 6-1c a) b) c) 6-1 F I F O L I F ADT

More information

KillTest 质量更高 服务更好 学习资料 半年免费更新服务

KillTest 质量更高 服务更好 学习资料   半年免费更新服务 KillTest 质量更高 服务更好 学习资料 http://www.killtest.cn 半年免费更新服务 Exam : 70-536Chinese(C++) Title : TS:MS.NET Framework 2.0-Application Develop Foundation Version : DEMO 1 / 10 1. Exception A. Data B. Message C.

More information

06 01 action JavaScript action jquery jquery AJAX CSS jquery CSS jquery HTML CSS jquery.css() getter setter.css('backgroundcolor') jquery CSS b

06 01 action JavaScript action jquery jquery AJAX CSS jquery CSS jquery HTML CSS jquery.css() getter setter.css('backgroundcolor') jquery CSS b 06 01 action JavaScript action jquery jquery AJAX 04 4-1 CSS jquery CSS jquery HTML CSS jquery.css() getter setter.css('backgroundcolor') jquery CSS background-color camel-cased DOM backgroundcolor.css()

More information

JBuilder Weblogic

JBuilder Weblogic JUnit ( bliu76@yeah.net) < >6 JUnit Java Erich Gamma Kent Beck JUnit JUnit 1 JUnit 1.1 JUnit JUnit java XUnit JUnit 1.2 JUnit JUnit Erich Gamma Kent Beck Erich Gamma Kent Beck XP Extreme Programming CRC

More information

Microsoft Word - ACI chapter00-1ed.docx

Microsoft Word - ACI chapter00-1ed.docx 前言 Excel Excel - v - 財務管理與投資分析 -Excel 建模活用範例集 5 相關 平衡 敏感 - vi - 前言 模擬 If-Then 規劃 ERP BI - vii - 財務管理與投資分析 -Excel 建模活用範例集 ERP + BI + ERP BI Excel 88 Excel 1. Excel Excel 2. Excel 3. Excel - viii - 前言 1.

More information

PowerPoint 簡報

PowerPoint 簡報 Paint 繪圖板 JAVA 程式設計 指導老師 : 鄞宗賢 組員 : 4A3G0901 劉彥佐 4A3G0907 韓偉志 畫面預覽 匯入參數 package paint; import java.awt.*; import java.awt.event.*; import javax.swing.*; 主程式 public class paint{ public static void main(string[]

More information

OOP with Java 通知 Project 4: 5 月 2 日晚 9 点

OOP with Java 通知 Project 4: 5 月 2 日晚 9 点 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 5 月 2 日晚 9 点 复习 类的复用 组合 (composition): has-a 关系 class MyType { public int i; public double d; public char c; public void set(double x) { d =

More information

TV 2005 92 1. 2. 3. 4. 5. 3 1 6 1 10 10 30 94 11 23 12 2 736 97 4 2.3 3 28.7 1-2 18.4 2-3 17.2 3 28.7 12.7 5 2.3 10 2 17 5 3 1-2 22.6 2 2-3 3-4 4-5 17.6 15.4 10.1 5 18 2.8 17 3 4 54.8 26.9 26.1 17.6 13.3

More information