透過.NET C# 程式實作 OO 建國科技大學資管系饒瑞佶

Size: px
Start display at page:

Download "透過.NET C# 程式實作 OO 建國科技大學資管系饒瑞佶"

Transcription

1 透過.NET C# 程式實作 OO 建國科技大學資管系饒瑞佶

2 物件導向程式設計 OOP 只要可以依據前述類別與物件方式設計程式的語言都可以來實現 OO 包括 :JAVA C++ C#... 也就是 OO 是設計方式, 不專屬於哪個程式語言 這裡選用.NET C#

3 開始前 -C# 程式語法與觀念對應 觀念 語法關鍵字 類別 class 實做類別 / 建立物件 new 繼承 : 不可以繼承 final 公開 public 不公開 private 不可 instance 的抽象類別 abstract 不可實際定義的抽象類別 interface 覆寫 override 當然還有更多

4 Visual C# 語法大規範 OOP 程式語言 大小寫有別 需要 ; 結尾 區段都是用 {} 包圍 都是 class 組成, 透過 name space 管理 // 或 /* */ 或 /// 作為註解

5 來實際作個範例 Class Car 屬性 + 方法 繼承 inheritance Class SubCar 屬性 + 方法

6 定義 Class Car 透過 Visual Studio Windows Form 操作

7 設定類別名稱為 Car

8 新建立的 Car 類別 透過 namespace 引用其他類別 類別所在位置 類別範圍

9 大家如果看預設就有的 Form1 透過 namespace 引用其他類別 類別所在位置 類別範圍

10 定義 Class Car 屬性 : 方法 :

11 建構子 constructor 類別中的一個特殊方法 透過這個類別建立物件時, 自動會執行的方法 方法名稱定義成與 Class 名稱一樣就可以 // 屬性 String car_type; // 車輛種類 int car_cc; // 車輛 cc 數 // 方法 // 建構子 public Car() { car_type = "Luxgen"; car_cc = 1800; }

12 其他方法 (1) 1 需要傳入兩個參數 public void setcar(string newcar_type, int newcar_cc) { // 設定屬性 car_type = newcar_type; car_cc = newcar_cc; }

13 2 其他方法 (2) 回傳值型態 public String getcar_type() { return car_type; } 需要回傳值

14 3 其他方法 (3) 回傳值型態 public int getcar_cc() { return car_cc; } 需要回傳值

15 完整的 Class Car 2 個屬性 1 個建構子 3 個方法

16 使用預設的 Form1.cs 來使用 Class Car 類別物件名稱 =new 類別名 ( 參數 );

17 透過 button1_click 事件呼叫取回預設的車樣式與 cc 數 private void button1_click(object sender, EventArgs e) { Car mycar = new Car(); // 顯示車輛內容 label1.text = " 車輛樣式 =" + mycar.getcar_type(); label2.text = " 車輛 CC 數 =" + mycar.getcar_cc(); }

18 Result

19 設定屬性資料並顯示 private void button2_click(object sender, EventArgs e) { // 透過類別 Car 建立物件 mycar Car mycar = new Car(); // 設定車輛種類與 cc 數 mycar.setcar(textbox1.text, Convert.ToInt16(textBox2.Text)); }

20 Result 結果不是我設定的資料? 因為沒有使用同一個物件 2

21 修改 button1_click 與 button2_click 只建立 1 份物件 取消分別建立的物件

22 結果正確了! result

23 設定整個 class 為 static 其他共用方式? 設定 class 物件為 static, 透過另一個 class

24 接著定義 Class SubCar(1) 繼承於前面建立的類別 Car

25 接著定義 Class SubCar(2) 繼承於前面建立的類別 Car

26 接著定義 Class SubCar(3) 繼承於前面建立的類別 Car

27 看一下 Car 類別

28 繼承 Class Car 建立 Class SubCar

29 先不在 SubCar 加任何屬性與方法 (1) 直接修改原 Form1 介面 加入一個按鈕

30 先不在 SubCar 加任何屬性與方法 (2) 直接修改原 Form1.cs 程式碼 建立 mysubcar 物件 private void button3_click(object sender, EventArgs e) { SubCar mysubcar = new SubCar(); label1.text = " 車輛樣式 =" + mysubcar.getcar_type(); label2.text = " 車輛 CC 數 =" + mysubcar.getcar_cc(); }

31 result

32 加入方法到 Class SubCar SubCar 中才有的方法 // 依據車種類回傳對應網站 public string gotourl(string car_type) { // 設定回傳值 string URLstring = ""; switch (car_type) { case "Nissan": URLstring = " break; case "Toyota": URLstring = " break; } return URLstring; }

33 再加入同樣名稱方法到 Class SubCar OverLoading 覆載參數型態不同 public string gotourl(int car_cc) { // 設定回傳值 string URLstring = ""; switch (car_cc) { case 1: URLstring = " break; case 2: URLstring = " break; } return URLstring; }

34 加入方法到 Class SubCar 使用 Overriding 覆寫 Override 取代 Car 類別中原有的方法 setcar // 覆寫 override 類別 Car 內的同名方法 public void setcar(string newcar_type, int newcar_cc) { // 設定屬性 car_type = " 從 SubCar 設定的車種 =" + newcar_type; car_cc = newcar_cc; } 變數的保護層級不正確

35 修改類別 Car 內的變數 ( 屬性 ) 保護層級 加入 public 修飾詞

36 完整的 Class SubCar 3 個方法 (overloading & override)

37 使用 Class SubCar 內的 setcar 方法 新加入的程式碼 private void button3_click(object sender, EventArgs e) { SubCar mysubcar = new SubCar(); // 呼叫 mysubcar 內的 setcar 方法 mysubcar.setcar(textbox1.text, Convert.ToInt16(textBox2.Text)); label1.text = " 車輛樣式 =" + mysubcar.getcar_type(); label2.text = " 車輛 CC 數 =" + mysubcar.getcar_cc(); }

38 result 2 1

39 呼叫 gotourl 方法 webbrowser

40 呼叫 gotourl 方法 private void button3_click(object sender, EventArgs e) { SubCar mysubcar = new SubCar(); // 呼叫 mysubcar 內的 setcar 方法 mysubcar.setcar(textbox1.text, Convert.ToInt16(textBox2.Text)); label1.text = " 車輛樣式 =" + mysubcar.getcar_type(); label2.text = " 車輛 CC 數 =" + mysubcar.getcar_cc(); webbrowser1.url = new Uri(mysubcar.gotoURL(1)); }

41 result

42 namespace 如果變動 Class Car 的 namespace, 那會影響什麼?

43 Form1 程式的改變 加入明確的 namespace 與類別名稱

44 Class SubCar 的改變 加入明確的 namespace 與類別名稱

45 讓 Class 不能被繼承 加入 sealed 關鍵字, 讓 Car 類別不能被繼承

46 幾個特殊的類別

47 有時候只定義而不實作 (implement) 抽象概念, 例如動物 現實講動物時是沒有意義的, 我們會問是人 狗 獅子或老虎, 也就是動物並不是具體可操作的 ( 物件 )( 無法物件化 ), 所以動物只要規範大方向, 例如動物都會移動, 那只要屬於 ( 繼承 ) 動物的都被要求要具體定義 (override 實作 ) 怎麼移動 稱為抽象類別

48 抽象類別 可以透過 abstract 語法定義 裡面可以定義具體方法 或抽象方法 抽象類別不可以用 new 建立物件 可以透過 interface 語法定義 (WCF 中就使用 ) 裡面不能定義具體方法 可以被多重繼承 可以用在 partial class 開發上

49 新加入一個 abstract class Animal

50 設定 class Animal 為抽象類別 abstract 設定為抽象類別

51 設定 class Animal 的方法 具體方法 abstract class Animal { // 具體方法 public string getdata(){ return " 來自 Animal 類別的資料 "; } // 抽象方法 public abstract string run(int how); } 抽象方法

52 加入 Form2

53 從 Form1 跳到 Form2 private void button4_click(object sender, EventArgs e) { Form2 f2 = new Form2(); f2.show(); f2.owner = this; // 設定 f2 的擁有者是 form1 this.hide(); }

54 從 Form2 使用類別 Animal private void button1_click(object sender, EventArgs e) { Animal myanimal = new Animal(); } 要如何使用 Animal 類別?

55 先使用一個類別 UseAnimal 繼承 Animal

56 在 UseAnimal 類別中會被要求實作 abstract 方法 使用 override class UseAnimal : Animal { public override string run(int how) { return " 通用的 run 方法 "; throw new NotImplementedException(); } }

57 此時就可以透過 UseAnimal 類別建立物件再回到 Fomr2 private void button1_click(object sender, EventArgs e) { UseAnimal myanimal = new UseAnimal(); // 呼叫 Animal 類別內的 getdata 方法 label1.text = myanimal.getdata(); }

58 result

59 接著加入一個 interface-plant

60 interface 不能定義具體方法 interface Plant { // 抽象方法 string getdata(); } 抽象方法

61 繼承實作 interface

62 繼承實作 interface 繼承 interface 實作 getdata 方法需要有 public 修飾詞 class UsePlant : Plant { public string getdata() { return " 來自 Plant 的資料 "; throw new NotImplementedException(); } }

63 Fomr2 private void button2_click(object sender, EventArgs e) { UsePlant myplant = new UsePlant(); label2.text = myplant.getdata(); }

64 result

65 Abstract vs. Interface 都可以只定義, 不實作 abstract 屬於 is-a 的概念, 例如定義一個鳥的 abstract 類別, 裡面有個 abstract 方法 飛, 那繼承鳥這個類別, 應該是老鷹或麻雀, 都會有飛這個方法, 也就是老鷹或麻雀是一種 (is-a) 鳥 Interface 屬於 有這種動作或行為 概念, 例如定義一個 飛翔 的 Interface, 裡面定義 飛 的方法, 那這個 Interface 可以被繼承做出飛機 鳥 火箭等類別或物件, 因為他們都有飛的行為 (is-a-part-of)

66 使用既有 class 例如按鈕

67 建立 Button 物件 使用既有的 Button 類別 建立方式 : 類別物件名稱 =new 類別名 ( 參數 ); Button bt1 = new Button(this);

68 建立與顯示按鈕物件 // 建立按鈕動態介面設計的基礎 Button bt = new Button(); bt.text = "ccc"; // 按鈕的位置 ( 正中央 ) bt.location = new Point((this.ClientSize.Width bt.width) / 2, (this.clientsize.height bt.height) / 2); // 按鈕加入 windows form this.controls.add(bt);

69 result

70 加入對應的事件 委派機制 // 按鈕加入事件 bt.click += new EventHandler(this.Btn_Click); void Btn_Click(Object sender, EventArgs e) { MessageBox.Show("test"); }

71 產生 Button 物件陣列 多個按鈕 -Button Array 委派 + 匿名函數 (lambda)

72 Button Array 事件

73 private void button3_click(object sender, EventArgs e) { Button[] buttonarray = new Button[3]; for (int i = 0; i< buttonarray.length; i++) { int index = i; buttonarray[i] = new Button(); buttonarray[i].location = new Point((i+1)*70,100+(i+10)*5); buttonarray[i].name = "button" + (i+1); buttonarray[i].text = "button" + (i + 1); buttonarray[i].size = new Size(70, 23); buttonarray[i].click += (sender1, e1) => this.display(index + 1); this.controls.add(buttonarray[i]); } } public void Display(int i) { MessageBox.Show("Button No :" +i); }

74 區別每個物件 private void button3_click(object sender, EventArgs e) { Button[] buttonarray = new Button[3]; for (int i = 0; i< buttonarray.length; i++) { int index = i; buttonarray[i] = new Button(); buttonarray[i].location = new Point((i+1)*70,100+(i+10)*5); buttonarray[i].name = "button" + (i+1); buttonarray[i].text = "button" + (i + 1); buttonarray[i].size = new Size(70, 23); //buttonarray[i].click += (sender1, e1) => this.display(index + 1); buttonarray[i].click += new System.EventHandler(this.Display); this.controls.add(buttonarray[i]); } } public void Display(object sender, EventArgs e) { var obj = sender as Button; MessageBox.Show("Button No :" + obj.name); }

75 多型 Polymorphism

76 多型 教科書定義 : Polymorphism means that the sender of a stimulus does not need to know the receiving instance s class. The receiving instance can belogin to an arbitrary class. If an instance sends a stimulus to another instance, but does not have to be aware of which class the receiving instance belongs to, we say that we have polymorphism. 一個訊息 (message or event or stimulus) 的意義是由接收者 (The receiving instance) 所解釋, 而不是由訊息發出者 (sender) 來解釋 也就是當程式在執行時, 只要接受者換成不同的物件或是 instance, 系統的行為就會改變, 具有這樣的特性就稱之為 polymorphism

77 例如 例如在一個班級中, 老師請學生搬桌子, 不論是請學生甲或是學生乙來搬, 老師 (sender) 同樣都會說 : 把桌子搬走 (message) 但學生甲 (receiving instance) 跟學生乙 (receiving instance) 搬桌子的方法並不相同, 學生甲也許是整張桌子抬起來, 學生乙可能是將桌子拖著走 ( 意義是由接收者 (The receiving instance) 所解釋 )

78 多型其他定義 當子類別的物件宣告或轉型成父類別的型別時, 還可以正確執行該子類別的行為時就具備多型 物件導向的多型機制, 是指當兩個以上的類別繼承同一種父類別時, 我們可以用父類別型態容納子類別的物件, 真正進行函數呼叫時會呼叫到子類別的函數, 此種特性稱之為多型

79 多型 以往程式在撰寫時就決定了要呼叫的動作或函式 但是在 OO 中設計了多型機制, 允許程式到執行階段才決定實際要呼叫哪一個動作或函式 例如動物 class 定義一個 run() 方法, 而動物可以被繼承實作成馬 獅子 老虎等動物, 每個都有 run 方法 等系統開始執行後, 在執行時若為獅子 ( 訊息接收者 ) 那就動態呼叫獅子的 run(), 以此類推

80 Animal 父類別 public string run() { return "Animal Run"; }

81 繼承 Animal 建立 AnimalCat 子類別 class AnimalCat : Animal { public string run() { return "Cat run"; } }

82 繼承 Animal 建立 AnimalDog 子類別 class AnimalDog : Animal { public string run() { return "dog run"; } }

83 使用多型呼叫

84 不使用多型呼叫 建立 2 個物件 設計階段就決定 決定要執行哪個物件

85 private void button1_click(object sender, EventArgs e) { // 建立 mycat 物件 AnimalCat mycat = new AnimalCat(); // 建立 mydog 物件 AnimalDog mydog = new AnimalDog(); int whichone = 1; switch (whichone) { case 1: label1.text= mycat.run(); break; case 2: label1.text = mydog.run(); break; } }

86 使用多型呼叫 執行階段決定 //// 第一種寫法 //AnimalCat cat = new AnimalCat(); //AnimalDog dog = new AnimalDog(); //showrun(dog); //// 第二種寫法 //AnimalCat cat = new AnimalCat(); //AnimalDog dog = new AnimalDog(); //Animal[] allanimal = {cat,dog }; //showrun(allanimal[0]); // 第三種寫法 Animal[] allanimal = new Animal[2]; allanimal[0] = new AnimalCat(); allanimal[1] = new AnimalDog(); showrun(allanimal[0]); private void showrun(animal obj) { label1.text = obj.run(); }

87 發現結果並不正確 答案永遠都是 "Animal Run 傳入 showrun 的都是型別為 Animal 的 AnimalDog 與 AnimalCat 物件, 雖然三者都有 Run, 但此時是以 Animal 父類別的 Run 為主

88 修改 Animal AnimalCat 與 AnimalDog 透過覆寫來達成

89 改得更直覺點

90 code 未來如果有其他動物要加入我們只要完成該動物的類別後在需要的地方建立物件並呼叫 showrun 就可以不需要再加入一堆 if 的判斷敘述維護上較為便利

91 差異? 多型的寫法 一般的寫法 如果只有幾個物件, 邏輯簡單, 那確實沒有差異但當物件數量變多, 邏輯變複雜時, 那就可以看到多型的好處

92 意思是 如果用一般寫法當物件變多時, 之後如果要修改顯示的方式, 那麼就需要到每個物件所在處修改 label1.text 這裡的語法, 維護上是一個負擔 使用多型寫法如果有修改, 我們只需要修改 showrun 內這一個地方的程式就可以 另外如果有額外的邏輯要處理, 我們也只要在 showrun 內進行異動就可以

93 所以, 使用多型時 程式碼可以寫的比較簡潔, 例如用一個迴圈來處理陣列等等方式, 避免寫一大堆的 if 或 switch 等等判斷式 以後需要加新工作時, 就在物件陣列中增加一個新物件, 不用再去更改 if 或 switch 區段程式, 這樣的寫法比較有彈性 當工作類型愈來愈多時, 此方法的效益就會很明顯 C# 中的委派也有類似機制, 針對的對象是方法

物件導向與事件驅動

物件導向與事件驅動 物件導向與事件驅動 建國科技大學資管系饒瑞佶 2016/4 V1 2016/5 V2 .NET 主要開發方式 包括 ASP.NET 物件導向 既有類別 ( 物件 )( 微軟或 3rd party 提供 ) 可見與不可見 程式中可以用顏色分辨 自訂類別 ( 物件 ) 事件驅動 : 透過 EventHandler 來控管 既有類別 ( 物件 ) 可見 : 工具箱中的控制項多數是 工具箱還有很多沒出現的既有物件

More information

運算子多載 Operator Overloading

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

More information

Microsoft Word - 投影片ch11

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

More information

Microsoft PowerPoint - 13_ClassAndObj.ppt

Microsoft PowerPoint - 13_ClassAndObj.ppt Visual Basic 2005 (VB.net 2.0) 程式設計 講師 : 戴志華 hana@arbor.ee.ntu.edu.tw 國立台灣大學電機工程研究所 第十三章 物件與類別 物件與類別 物件導向程式設計 物件與類別的建立 物件與類別 物件 (object) Ex. 人 屬性 (property) 身高 體重 血型 方法 (method) 走路 跑步 訊息 (message) 交談 事件

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

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

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

More information

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

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

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

新・解きながら学ぶ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

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

Microsoft PowerPoint - chap08.ppt

Microsoft PowerPoint - chap08.ppt 第八章繼承 資訊科技系 林偉川 類別繼承使用 extends 關鍵字 修飾字 class 子類別 extends 父類別 1 { // 區塊內的程式敘述 類別以 final 宣告時, 不能做為父類別 extends 關鍵字之後只能接一個父類別 2 1 例子 : class A{ class B extends A { class C extends A { class D extends B { final

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

《大话设计模式》第一章

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

More information

Microsoft PowerPoint - P766Ch06.ppt

Microsoft PowerPoint - P766Ch06.ppt PHP5&MySQL 程式設計 第 6 章物件導向 6-1 認識物件導向 物件 (object) 或 案例 (instance) 屬性 (property) 欄位 (field) 或 成員變數 (member variable) 方法 (method) 或 成員函式 (member function) 事件 (event) 類別 (class) 物件導向程式設計 (OOP) 具有下列特點 : 封裝

More information

投影片 1

投影片 1 計算機程式及實習 期末報告 題目 : 六宿炒翻天 班級 : 奈米一乙姓名 : 陳洋翼學號 :4A514050 老師 : 謝慶存 程式說明 設計結帳系統, 選擇數量後, 在按下計算, 將會顯示總金額 若是老人或小孩, 將可享 8 折或 9 折的優惠 程式畫面 填選數量 在火腿蛋炒飯的數量選擇 1, 並按下計算, 可得總金額 50 元 程式畫面 打折 填選完後, 若客人是小孩或老人, 選擇欲打折項目,

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

untitled

untitled Inside ASP.NET 2.0- ASP.NET 1.1 2. 理念 讀 了 了 度 讀 了 理 類 來 來說 流 了 來 來 來 來 理 來 不 讀 不 不 力 來參 流 讀 了 異 行 來了 錄 行 不 了 來 了 來 行 論說 了 更 不 例 來了 力 行 樂 不 說 兩 例 利 來 了 來 樂 了 了 令 讀 來 不 不 來 了 不 旅行 令 錄 錄 來 了 例 來 利 來 ManagerProvide

More information

Slide 1

Slide 1 Java 程式設計入門 講師 : 陳昭源 CSIE, NTU 2005/07/16 Outline 物件基礎 Object Basics 類別與成員 Classes & Members Exercise July 16, 2005 Page 2 物件導向程式設計 Object-Oriented Programming (OOP) 類別 Class 模板 樣板, 可根據此規格建立物件 Hidden Implementation

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

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

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

10-2 SCJP SCJD 10.1 昇陽認證 Java 系統開發工程師 的認證程序 Java IT SCJD

10-2 SCJP SCJD 10.1 昇陽認證 Java 系統開發工程師 的認證程序 Java IT SCJD 10 SCJD 簡介 Java 10-2 SCJP SCJD 10.1 昇陽認證 Java 系統開發工程師 的認證程序 Java IT SCJD 10 SCJD 10-3 Java Java SCJD 7 Swing RMI 10.1.1 The Assignment The Essay 9 10 10-4 SCJP SCJD 90 10.1.2 SCJP Java 90 120 Swing 10

More information

投影片 1

投影片 1 Chap 9 巢狀類別 多形與套件 9-1 巢狀類別 9-2 匿名內層類別 9-3 多形的基礎 9-4 多形的實作 9-5 套件 9-1 巢狀類別 9-1-1 巢狀類別 9-1-2 內層類別的使用 9-1-1 巢狀類別 - 說明 巢狀類別是在類別中擁有其他類別的宣告, 在外面的類別稱為 外層類別 (Enclosing Class); 內層的成員類別稱為 內層類別 (Inner Classes) 巢狀類別強調類別之間的關聯性,

More information

Microsoft PowerPoint - ch6 [相容模式]

Microsoft PowerPoint - ch6 [相容模式] UiBinder wzyang@asia.edu.tw UiBinder Java GWT UiBinder XML UI i18n (widget) 1 2 UiBinder HelloWidget.ui.xml: UI HelloWidgetBinder HelloWidget.java XML UI Owner class ( Composite ) UI XML UiBinder: Owner

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

エスポラージュ株式会社 住所 : 東京都江東区大島 東急ドエルアルス大島 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

投影片 1

投影片 1 Chap 8 繼承 抽象類別與介面 8-1 類別的繼承 8-2 介面 8-3 介面的繼承 8-4 抽象類別 8-5 抽象類別與介面 8-6 常數類別 8-1 類別的繼承 8-1-1 類別架構 8-1-2 類別的繼承 8-1-3 覆寫和隱藏父類別的方法 8-1-4 隱藏父類別的成員變數 8-1-5 使用父類別的建構子 8-1-1 類別架構 - 繼承關係 類別的繼承關係可以讓我們建立類別架構, 在 UML

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

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

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

Microsoft Word - 01.DOC

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

More information

導讀 ASP.NET HTML ASP 第一篇 基礎篇第 1 章 認識 ASP.NET ASP.NET ASP.NET ASP.NET ASP.NET 第 2 章 認識 Visual Studio 20 開發環境 Visual Studio 20 Visual Studio 20 第二篇 C# 程式

導讀 ASP.NET HTML ASP 第一篇 基礎篇第 1 章 認識 ASP.NET ASP.NET ASP.NET ASP.NET ASP.NET 第 2 章 認識 Visual Studio 20 開發環境 Visual Studio 20 Visual Studio 20 第二篇 C# 程式 導讀 ASP.NET HTML ASP 第一篇 基礎篇第 1 章 認識 ASP.NET ASP.NET ASP.NET ASP.NET ASP.NET 第 2 章 認識 Visual Studio 20 開發環境 Visual Studio 20 Visual Studio 20 第二篇 C# 程式語言篇第 3 章 C# 程式語言基礎 C# C# 3.0 var 第 4 章 基本資料處理 C# x

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

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

untitled

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

More information

運算子多載 Operator Overloading

運算子多載 Operator Overloading 函數樣板 (Function Template) 與 類別樣板 (Class Template) 講師 : 洪安 1 資料結構與 C++ 程式設計進階班 為何需要通用函數? (1/2) int abs(int x) { return (x>0)?x:-x; 取名困難不好記 float fabs(float x) { return (x>0)?x:-x; complex cabs(complex x)

More information

Microsoft Word - 物件導向編程精要.doc

Microsoft Word - 物件導向編程精要.doc Essential Object-Oriented Programming Josh Ko 2007.03.11 object-oriented programming C++ Java OO class object OOP Ruby duck typing complexity abstraction paradigm objects objects model object-oriented

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

Microsoft PowerPoint - EmbSys102_JavaOOP [相容模式]

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

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

Visual C# 2010 與 UML 開發實戰 C# 第 5 章物件導向基礎 C# C# 第 6 章資料與變數 C# 第 7 章判斷式與迴圈 C# 第 8 章陣列與集合 C# 第 9 章偵錯與例外狀況處理 Visual Studio 2010 C# try...catch ix

Visual C# 2010 與 UML 開發實戰 C# 第 5 章物件導向基礎 C# C# 第 6 章資料與變數 C# 第 7 章判斷式與迴圈 C# 第 8 章陣列與集合 C# 第 9 章偵錯與例外狀況處理 Visual Studio 2010 C# try...catch ix C# Visual Studio 2010.NET Framework 4 Visual C# WPF 第 1 章 Visual Studio 2010 概述.NET Framework 4 Visual Studio 2010 第 2 章建立 WPF 視窗應用程式 WPF Visual Studio 2010 WPF C# 第 3 章 WPF 基本控制項 WPF WPF Label TextBox

More information

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

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

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

Chapter 9: Objects and Classes

Chapter 9: Objects and Classes Fortran Algol Pascal Modula-2 BCPL C Simula SmallTalk C++ Ada Java C# C Fortran 5.1 message A B 5.2 1 class Vehicle subclass Car object mycar public class Vehicle extends Object{ public int WheelNum

More information

CC213

CC213 : (Ken-Yi Lee), E-mail: feis.tw@gmail.com 9 [P.11] : Dev C++ [P.12] : http://c.feis.tw [P.13] [P.14] [P.15] [P.17] [P.23] Dev C++ [P.24] [P.27] [P.34] C / C++ [P.35] 10 C / C++ C C++ C C++ C++ C ( ) C++

More information

<ADB6ADB1C25EA8FAA6DB2D4D56432E706466>

<ADB6ADB1C25EA8FAA6DB2D4D56432E706466> packages 3-31 PART 3-31 03-03 ASP.NET ASP.N MVC ASP.NET ASP.N MVC 4 ASP.NET ASP.NE MVC Entity Entity Framework Code First 2 TIPS Visual Studio 20NuGetEntity NuGetEntity Framework5.0 CHAPTER 03 59 3-3-1

More information

Strings

Strings Inheritance Cheng-Chin Chiang Relationships among Classes A 類 別 使 用 B 類 別 學 生 使 用 手 機 傳 遞 訊 息 公 司 使 用 金 庫 儲 存 重 要 文 件 人 類 使 用 交 通 工 具 旅 行 A 類 別 中 有 B 類 別 汽 車 有 輪 子 三 角 形 有 三 個 頂 點 電 腦 內 有 中 央 處 理 單 元 A

More information

105Tr_CIS1

105Tr_CIS1 准考證號碼 : 國立臺中教育大學 105 學年度學士班日間部轉學招生考試 計算機概論試題 適用學系 : 資訊工程學系二 三年級 一 選擇題 (40%, 每題 2%) 1. 在物件導向程式設計中, 一個抽象類別 (Abstract Class) 為 A. 一個沒有方法 (method) 的類別 B. 一個不能被繼承 (inherit) 的類別 C. 一個不能被實體化 (instantiated) 的類別

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

單步除錯 (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

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

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

全国计算机技术与软件专业技术资格(水平)考试

全国计算机技术与软件专业技术资格(水平)考试 全 国 计 算 机 技 术 与 软 件 专 业 技 术 资 格 ( 水 平 ) 考 试 2008 年 上 半 年 程 序 员 下 午 试 卷 ( 考 试 时 间 14:00~16:30 共 150 分 钟 ) 试 题 一 ( 共 15 分 ) 阅 读 以 下 说 明 和 流 程 图, 填 补 流 程 图 中 的 空 缺 (1)~(9), 将 解 答 填 入 答 题 纸 的 对 应 栏 内 [ 说 明

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

PowerPoint Presentation

PowerPoint Presentation C++ 與資料結構 NTU CSIE 大綱 使用類別 (Class) 建立資料結構 使用繼承 (Inheritance) 建立資料結構 C++ 物件導向 以物件為基礎的程式設計, 將程式中互動的單元視為一個個的物件 封裝 (Encapsulation) 封裝物件資訊是第一步, 您要瞭解如何使用類別定義物件, 像是定義物件的屬性 方法 ( 行為 ) 等等, 類別是建構物件時所依賴的規格書 Example

More information

一、

一、 考試時間 : 1 小時 30 分座號 : 全五頁第一頁 注意 : 禁止使用電子計算器 不必抄題, 作答時請將試題題號及答案依照順序寫在試卷上, 於本試題上作答者, 不予計分 一 就下列 Java 程式片斷中加入一個 for 迴圈, 使其印出右側結果 (15 分 ) public class AllNumbers number square cube 0 0 0 public static void

More information

OOP with Java 通知 Project 3: 3 月 29 日晚 9 点 4 月 1 日上课

OOP with Java 通知 Project 3: 3 月 29 日晚 9 点 4 月 1 日上课 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 3: 3 月 29 日晚 9 点 4 月 1 日上课 复习 Java 包 创建包 : package 语句, 包结构与目录结构一致 使用包 : import restaurant/ - people/ - Cook.class - Waiter.class - tools/ - Fork.class

More information

BOOL EnumWindows(WNDENUMPROC lparam); lpenumfunc, LPARAM (Native Interface) PowerBuilder PowerBuilder PBNI 2

BOOL EnumWindows(WNDENUMPROC lparam); lpenumfunc, LPARAM (Native Interface) PowerBuilder PowerBuilder PBNI 2 PowerBuilder 9 PowerBuilder Native Interface(PBNI) PowerBuilder 9 PowerBuilder C++ Java PowerBuilder 9 PBNI PowerBuilder Java C++ PowerBuilder NVO / PowerBuilder C/C++ PowerBuilder 9.0 PowerBuilder Native

More information

Microsoft Word - chap12.doc

Microsoft Word - chap12.doc 94 12. Inheritance in Java Java 的類別同樣有繼承的功能, 衍生類別同樣會繼承基本類別所有的資料成員與函式成員, 當繼承而來的函式成員不適於衍生類別時, 同樣可以在衍生類別之定義內將其重新定義 (override), 並可進一步加入新的成員 ( 資料或函式 ), 以符合衍生類別應有的屬性與行為 一基本類別 ( 父類別 ) 可以有需多繼承它的衍生類別 ( 子類別 ), 與

More information

untitled

untitled PowerBuilder Tips 利 PB11 Web Service 年度 2 PB Tips PB9 EAServer 5 web service PB9 EAServer 5 了 便 web service 來說 PB9 web service 力 9 PB11 release PB11 web service 力更 令.NET web service PB NVO 論 不 PB 來說 說

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

<4D6963726F736F667420506F776572506F696E74202D20332D322E432B2BC3E6CFF2B6D4CFF3B3CCD0F2C9E8BCC6A1AAD6D8D4D8A1A2BCCCB3D0A1A2B6E0CCACBACDBEDBBACF2E707074>

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

More information

Spyder Anaconda Spyder Python Spyder Python Spyder Spyder Spyder 開始 \ 所有程式 \ Anaconda3 (64-bit) \ Spyder Spyder IPython Python IPython Sp

Spyder Anaconda Spyder Python Spyder Python Spyder Spyder Spyder 開始 \ 所有程式 \ Anaconda3 (64-bit) \ Spyder Spyder IPython Python IPython Sp 01 1.6 Spyder Anaconda Spyder Python Spyder Python Spyder Spyder 1.6.1 Spyder 開始 \ 所有程式 \ Anaconda3 (64-bit) \ Spyder Spyder IPython Python IPython Spyder Python File

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

基于ECO的UML模型驱动的数据库应用开发1.doc

基于ECO的UML模型驱动的数据库应用开发1.doc ECO UML () Object RDBMS Mapping.Net Framework Java C# RAD DataSetOleDbConnection DataGrod RAD Client/Server RAD RAD DataReader["Spell"].ToString() AObj.XXX bug sql UML OR Mapping RAD Lazy load round trip

More information

建模与图形思考

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

More information

Android Service

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

More information

1 Framework.NET Framework Microsoft Windows.NET Framework.NET Framework NOTE.NET NET Framework.NET Framework 2.0 ( 3 ).NET Framework 2.0.NET F

1 Framework.NET Framework Microsoft Windows.NET Framework.NET Framework NOTE.NET NET Framework.NET Framework 2.0 ( 3 ).NET Framework 2.0.NET F 1 Framework.NET Framework Microsoft Windows.NET Framework.NET Framework NOTE.NET 2.0 2.0.NET Framework.NET Framework 2.0 ( 3).NET Framework 2.0.NET Framework ( System ) o o o o o o Boxing UnBoxing() o

More information

(Microsoft Word - wes _\246p\246\363\250\317\245\316watchdog\250\276\244\356\265{\246\241\267\355\276\367.doc)

(Microsoft Word - wes _\246p\246\363\250\317\245\316watchdog\250\276\244\356\265{\246\241\267\355\276\367.doc) 作者 Amber 版本 1.0.0 日期 2012/04/24 頁數 1/9 如何使用 watchdog 防止程式當機? 適用於 : 平台 作業系統版本 XPAC utility 版本 XP-8000 系列 WES2009 所有版本 XP-8000-Atom 系列 WES2009 所有版本 注意! 欲變更系統的任何設定之前, 請先關閉 EWF 的保護, 方能使變更值生效 ; 設定完成之後, 請再開啟

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

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

基金发行法律法规

基金发行法律法规 ...1...9...11...13...30...35...47...49...50 1998/4...51 1998/10...51...52...56 ( ) 2001...57...59 2002...62...64...68 [2002] 2002.11.26 ( ) ( ) ) 7 ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ( ) ( ) 60 ) 7

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

第二章 簡介類別

第二章  簡介類別 Instructor Hsueh-Wen Tseng 曾學文,hwtseng@nchu.edu.tw Textbook C++ 程式設計風格與藝術 (O Reilly). Requirements Assignment x? 100% TAs 第一章概觀 C++ 1-2 二種版本的 C++ 1-5 初步檢視類別 1-1 何謂物件導向程式設計 1-8 C++ 的關鍵字 1-2 二種版本的 C++ //

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

09_Constructor

09_Constructor 物件的建構 物件的建構 幫物件設定初始狀態 物件的建構方法 (Constructor) 建構方法 是一種 method Constructor 在建立物件時由系統系統自動自動呼叫, 例如當在建構物件時 Ootest ot = new Ootest(); () 就是系統自動呼叫的作用 若類別中沒有定義建構方法, 則 Java 編譯器會自動幫該類別定義一個預設建構方法 (Defualt constructor)

More information

Microsoft PowerPoint - plan08.ppt

Microsoft PowerPoint - plan08.ppt 程 序 设 计 语 言 原 理 Principle of Programming Languages 裘 宗 燕 北 京 大 学 数 学 学 院 2012.2~2012.6 8. 面 向 对 象 为 什 么 需 要 面 向 对 象? OO 语 言 的 发 展 面 向 对 象 的 基 本 概 念 封 装 和 继 承 初 始 化 和 终 结 处 理 动 态 方 法 约 束 多 重 继 承 总 结 2012

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

软件工程文档编制

软件工程文档编制 实训抽象类 一 实训目标 掌握抽象类的定义 使用 掌握运行时多态 二 知识点 抽象类的语法格式如下 : public abstract class ClassName abstract void 方法名称 ( 参数 ); // 非抽象方法的实现代码 在使用抽象类时需要注意如下几点 : 1 抽象类不能被实例化, 实例化的工作应该交由它的子类来完成 2 抽象方法必须由子类来进行重写 3 只要包含一个抽象方法的抽象类,

More information

(procedure-oriented)?? 2

(procedure-oriented)?? 2 1 (procedure-oriented)?? 2 (Objected-Oriented) (class)? (method)? 3 : ( 4 ???? 5 OO 1966 Kisten Nygaard Ole-Johan Dahl Simula Simula 爲 6 Smalltalk Alan Kay 1972 PARC Smalltalk Smalltalk 爲 Smalltalk 爲 Smalltalk

More information

Microsoft Word - chap10.doc

Microsoft Word - chap10.doc 78 10. Inheritance in C++ 我 們 已 介 紹 了 物 件 導 向 程 式 的 第 一 個 主 要 特 性, 即 程 式 可 模 組 化 成 為 類 別 ( 物 件 ), 類 別 具 有 資 料 封 裝 的 特 性 接 下 來 我 們 要 介 紹 物 件 導 向 程 式 的 另 一 個 主 要 特 性, 那 就 是 類 別 具 有 繼 承 的 功 能 繼 承 就 是 重 複

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 点 复习 Java 包 创建包 : package 语句, 包结构与目录结构一致 使用包 : import restaurant/ - people/ - Cook.class - Waiter.class - tools/ - Fork.class - Table.class

More information

untitled

untitled 3 C++ 3.1 3.2 3.3 3.4 new delete 3.5 this 3.6 3.7 3.1 3.1 class struct union struct union C class C++ C++ 3.1 3.1 #include struct STRING { typedef char *CHARPTR; // CHARPTR s; // int strlen(

More information

ASP.NET MVC Visual Studio MVC MVC 範例 1-1 建立第一個 MVC 專案 Visual Studio MVC step 01 Visual Studio Web ASP.NET Web (.NET Framework) step 02 C:\M

ASP.NET MVC Visual Studio MVC MVC 範例 1-1 建立第一個 MVC 專案 Visual Studio MVC step 01 Visual Studio Web ASP.NET Web (.NET Framework) step 02 C:\M ASP.NET MVC Visual Studio 2017 1 1-4 MVC MVC 範例 1-1 建立第一個 MVC 專案 Visual Studio MVC step 01 Visual Studio Web ASP.NET Web (.NET Framework) step 02 C:\MvcExamples firstmvc MVC 1-7 ASP.NET MVC 1-9 ASP.NET

More information

第二章 簡介類別

第二章  簡介類別 Instructor 曾學文 hwtseng@nchu.edu.tw http://wccclab.cs.nchu.edu.tw/www/index.php/c ourse/2017-03-20-07-38-21/105-105-2-c TA 王昱彬 第一章概觀 C++ 1-2 二種版本的 C++ 1-5 初步檢視類別 1-1 何謂物件導向程式設計 1-8 C++ 的關鍵字 1-2 二種版本的 C++

More information

ii Vue Bootstrap 4 ES 6 Vue Vue Bootstrap 4 ES 6 Vue 2 vue html vue html vue Vue HTML 5 CSS ES 6 HTML 5 CSS Visual Studio Code h

ii Vue Bootstrap 4 ES 6 Vue Vue Bootstrap 4 ES 6 Vue 2 vue html vue html vue Vue HTML 5 CSS ES 6 HTML 5 CSS Visual Studio Code h ii Vue Bootstrap 4 ES 6 Vue Vue Bootstrap 4 ES 6 Vue 2 vue010101.html vue010104.html vue0101 01 04 Vue HTML 5 CSS ES 6 HTML 5 CSS Visual Studio Code https://code.visualstudio.com/ Chrome XAMP Visual Studio

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

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

KillTest 质量更高 服务更好 学习资料   半年免费更新服务 KillTest 质量更高 服务更好 学习资料 http://www.killtest.cn 半年免费更新服务 Exam : 1Z0-854 Title : Java Standard Edition 5 Programmer Certified Professional Upgrade Exam Version : Demo 1 / 12 1.Given: 20. public class CreditCard

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

D C 93 2

D C 93 2 D9223468 3C 93 2 Java Java -- Java UML Java API UML MVC Eclipse API JavadocUML Omendo PSPPersonal Software Programming [6] 56 8 2587 56% Java 1 epaper(2005 ) Java C C (function) C (reusability) eat(chess1,

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

100 5 ϕ ϕ ϕ ϕ ϕ ϕ ϕ ϕ 1 7 30 13 19 1 7 40 56 13 19 1 7 405 58 13 19 (0 5 10 15 20 40 ) ( ) 14 80 160 320 20 X = x1 + x2 + x3 + Λ Λ x n X X x x x x 1 + 2 + 3+ Λ Λ n = n X X

More information

untitled

untitled 1 Outline ArrayList 類 列類 串類 類 類 例 理 MSDN Library MSDN Library 量 例 參 列 [ 說 ] [] [ 索 ] [] 來 MSDN Library 了 類 類 利 F1 http://msdn.microsoft.com/library/ http://msdn.microsoft.com/library/cht/ Object object

More information

1811 1884 1847 1860 1862 1871 1875 1823 1884 1851 1876 1878 1879 1880 1884 20 1858 1861 1864 1862

1811 1884 1847 1860 1862 1871 1875 1823 1884 1851 1876 1878 1879 1880 1884 20 1858 1861 1864 1862 1768 1842 1788 1842 1766 1848 1805 1864 1853 1862 1811 1884 1847 1860 1862 1871 1875 1823 1884 1851 1876 1878 1879 1880 1884 20 1858 1861 1864 1862 1833 1884 1855 1861 500 1862 1864 1868 1875 1829 1888

More information

<4D6963726F736F667420576F7264202D203234A8E2A9A4B142ABC3AABAB7C5B1A1ADB1BB50AA6BA8EEADB1>

<4D6963726F736F667420576F7264202D203234A8E2A9A4B142ABC3AABAB7C5B1A1ADB1BB50AA6BA8EEADB1> 專 題 論 述 兩 岸 婚 姻 的 溫 情 面 與 法 制 面 蔡 漢 賢 林 姹 君 壹 引 言 一 九 八 七 年 十 一 月 政 府 開 放 臺 灣 地 區 人 民 赴 大 陸 探 親, 兩 岸 婚 姻 關 係 隨 即 興 起 波 瀾, 舊 有 的 再 續 連 理 枝, 新 增 的 添 加 了 不 少 比 翼 鳥, 兼 之 近 年 臺 商 西 進, 大 陸 成 為 臺 灣 最 大 出 口 市

More information

<4D6963726F736F667420576F7264202D20A2B0A1D0A2B0A1D0A2B0A240A6CBAA4FC554BC4DB7ABA240A7D6AA4FBD6DB2DF2E646F63>

<4D6963726F736F667420576F7264202D20A2B0A1D0A2B0A1D0A2B0A240A6CBAA4FC554BC4DB7ABA240A7D6AA4FBD6DB2DF2E646F63> 節 拍 與 文 字 的 遊 戲 \ 板 眼 旋 律 板 眼 : 傳 統 術 語, 即 節 拍 之 意 以 強 弱 區 別, 強 拍 叫 板, 弱 拍 叫 眼 在 板 書 類 的 曲 種 中, 以 前 半 拍 與 後 半 拍 組 成 一 拍, 結 合 文 字 數 唱, 形 成 各 種 板 式 為 了 學 習 的 方 便, 我 們 將 前 半 拍 叫 板, 後 半 拍 叫 眼 數 唱 : 傳 統 術 語,

More information

Microsoft Word - 02 002207 薪酬管理制度.doc

Microsoft Word - 02 002207 薪酬管理制度.doc 新 疆 准 东 石 油 技 术 股 份 有 限 公 司 薪 酬 管 理 制 度 第 一 部 分 员 工 工 资 管 理 办 法 第 一 条 第 一 章 总 则 为 了 建 立 与 现 代 企 业 制 度 相 适 应 的 薪 酬 分 配 体 系, 调 动 员 工 积 极 性, 提 高 工 作 效 率, 激 励 员 工 为 公 司 创 造 更 高 的 价 值, 增 强 新 疆 准 东 石 油 技 术 股

More information

Az b.doc

Az b.doc , , OO OO 191,904,774.12 297,110,448.79 190,753,347.38 292,972,187.76 36,045,126.94 55,629,371.31 36,045,126.94 55,629,371.31 296,286,176.11 323,860,641.25 299,904,945.80 325,041,549.49 45,460,963.46

More information