高焕堂AI创新学习专区
直播中

小伍

9年用户 4814经验值
擅长:电源/新能源 嵌入式技术
私信 关注
[经验]

Object-Oriented Python入門编程(一):认识类别

  • 請先安裝開發環境
  • 請看==> 詳細說明


1.  類別是資料型態
我們常說,3 是一個整數,這句話表達了:3 是物件,而整數是類別。若用電腦的術語,就相當於:3 是一項資料,其型態是「整數」。傳統BASIC 提供了:字串、整數及實數共3 種資料型態。亦即BASIC 已定義了3 類別──
字串、整數及實數,各代表一群體。例如:
  • "Beer"是一個字串 ==> "Beer" 是字串類別之物件。
  • 888 是一個整數 ==> 888 是整數類別之物件。
  • -25.25是一個實數 ==> -25.25 是實數類別之物件。


像傳統的C語言(或其他語言)不允許創造新類別,您只能利用這3 種類別來描述自然界中的各式各樣物件。在OOP 語言中,您能無限制地創造新類別,裨完整地表達自然界的各種物件。就像傳統的BASIC語言,其資料分為:常數(Constant)與變數(Variable)。然而,在OOP 語言中,您能無限制地創造新類別,裨完整地表達自然界的各種物件(Object)。

2. 類別之用途:描述物件之特徵與行為
  軟體中之物件為自然界物件之抽象表示,只表達了其重要特徵與行為,而忽略了細節部分。至於那些是重要特徵和行為呢﹖程式中必須加以說明。同類別之物件具有共同的重要特徵與行為,因之可由類別統一說明個體應表達那些特徵和行為。也就是說,類別統一說明了物件應含那些「資料」(Data)和那些「函數」(Function)。例如:
1.png

Python已定義的「實數」類別,其說明了「實數」之物件皆含有+ 、- 、* 、/ 等基本運算(行為),凡實數之物件皆能做這些運算。再如字串類別,其物件之共同行為不包括 / 、 ^ 運算,所以下述程式錯了。
2.png

於是,輸出了錯誤訊息:
3.png

因為"/" 運算並非字串類別內物件之共同行為,所以a無法接受訊息──「/ 3 」。同理,如果我們創造了新類別──「花(Flower)」,且定義如下:
4.png

這就是「花」類別之定義,它說明了:
      ◎「花」類別內之物件皆具兩項共同特徵:
            ◇ name
            ◇ age
      ◎「花」類別之物件皆具兩項共同行為:
            ◇ cry()
            ◇ say()
  其中,同類別之物件其特徵和行為是一致的,所以只須在類別定義中統一說明之,不必對物件逐一說明了。

3.  拿類別來創建物件
   於是,能藉「花」類別來定義物件,例如:
      花  rose;
此時,rose物件圖示如下:
5.png
乾坤變化,化生萬物,萬物生生不息,此為自然之美與永恆不朽。軟體中之物件,也得隨著宇宙變化而生生不息。1990年代,軟體專家也發現這生生不息的原理,正提供軟體人員美好的方向,可達成OOP 的理想──追求軟體永恆之美。 於是,在1991年人類創造了Python程式語言。
~ End ~

更多回帖

发帖
×
20
完善资料,
赚取积分