3-4 類別與物件

計算一個人的 BMI 指數

  上一個單元的 HelloWorld 是個很簡單的程式,但實務上很少會遇到如此簡單的需求(只求印出一段固定文字),若只用這類型態來設計程式,是很難處理較複雜的需求的。如果想要計算出一個人的身體質量指數 (BMI, Body Mass Index),實作如下:

  BMI指數的算法是:

體重(kg)/ 身高(m)2

  筆者可以使用上一個例子來實作它,假如體重為 65 公斤(變數 w),身高是 170 公分(變數 h),內容如下:

  類別被執行時會從第 4 行循序執行到第 8 行,第 7 行計算 BMI 指數得到結果後放入變數 bmi,最後第 8 行印出 bmi 的結果:

Your BMI is 22.491348

  這樣的程式雖然達到了需求,但是卻不方便日後自己或其他人來重覆使用,只能複製程式碼區塊去使用,當日子一久,可能也忘記變數 w、h 的用途是什麼了。

物件

  在現實生活中也是如此,如果建商要建一座豪宅,應該事先設計出豪宅的藍圖,藍圖中規劃了地基、平面規劃、大門的高度與各樓層的設計等細節。等到藍圖設計完成後,再找一塊地,請監造人依照藍圖去建造出實際可使用的豪宅。

  上圖依照藍圖建造出的實物才能讓人使用,而且能利用同一張藍圖,再去別的地點建造另一個豪宅。設計類別時,就等同在設計藍圖一樣,當設計完成後,藍圖是無法產生效用的,直到我們依照藍圖,將「實例」建造生成出來時,才能夠開始使用,而實例就是 Java/Kotlin 語言中的「物件」。

  所以,在程式設計與解決問題時,應先設想能不能夠將相關的程式碼組織或歸納為類別,設計好類別應有的資訊或動作後,再依照類別產生出可使用的物件去解決問題

完成並繼續  
問題討論

2 問答