JAVA计算图形面积(圆形,正方形, 长方形)

上传人:豆浆 文档编号:48370339 上传时间:2018-07-14 格式:PPTX 页数:22 大小:250.08KB
返回 下载 相关 举报
JAVA计算图形面积(圆形,正方形, 长方形)_第1页
第1页 / 共22页
JAVA计算图形面积(圆形,正方形, 长方形)_第2页
第2页 / 共22页
JAVA计算图形面积(圆形,正方形, 长方形)_第3页
第3页 / 共22页
JAVA计算图形面积(圆形,正方形, 长方形)_第4页
第4页 / 共22页
JAVA计算图形面积(圆形,正方形, 长方形)_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《JAVA计算图形面积(圆形,正方形, 长方形)》由会员分享,可在线阅读,更多相关《JAVA计算图形面积(圆形,正方形, 长方形)(22页珍藏版)》请在金锄头文库上搜索。

1、問題:形狀的面積問題:形狀的面積王豐緒 銘傳大學資訊工程學系問題基本資訊標題 具有計算面積能力的形狀 問題描述 給一個形狀 ( 可能是正方形、長方形或圓形 ) 以 及相關資料,請問面積是 ? 目的 讓同學練習多類別的設計(透過繼承與抽象類別 ,別多型),並轉換成物件模型與JAVA Code版本 :2011/07/28 提示 請以UML圖型繪製本問題的物件模型 以JAVA實作程式問題分析:掌握領域知識給一個形狀(含正方形、長方形及圓形)以 及相關資料,請問面積是?學習單1:請同學整理相關領域知識面積?物件模型學習單2:請同學根據問題描述,尋找適當 的物件模型給一個形狀(可能是正方形、長方形或圓形

2、)以及相關 資料,請問面積是? 名詞形狀:正方形:Square長方形:Rectangle圓形:Circle邊長、半徑、面積:類別的成員類別之間的關係:運用歸納能力繼承 繼承繼承Shape類別抽象類別 不能產生物件 (沒有具體足夠的資訊)資料成員 面積:protected double area (任何的形狀都有面積)功能成員 public void computeArea():計算面積(抽象動作) public double getArea():取得形狀的面積 (具體 動作) public void printArea():顯示形狀的面積 (具體 動作)Rectangle類別繼承Shape類別

3、繼承相關的屬性和動作 (protected, public)資料成員邊長:protected double sideX 邊長: protected double sideY功能成員實作public void computeArea():計算長方形 的面積 public void setSideLength(double x, double y) :設定新的邊長Square類別繼承Rectangle類別資料成員無功能成員public Square(double n):建立特定的正方形 (建構元)public void setSideLength(double l) :設定新 的邊長Circle類

4、別繼承Shape類別資料成員半徑:radius功能成員實作public void computeArea():計算圓形的 面積 public Circle(double r):建立特定的圓形(建 構元) public void setRadius(double r) :設定新的 半徑學習單3: JAVA Code學習任務請利用BlueJ撰寫本問題的JAVA Code, 並且進行測試Shape類別public abstract class Shape protected double area;abstract public void computeArea();public double ge

5、tArea()return area;public void printArea()System.out.println(“Area is:“ + area); 定義抽象類別定義抽象動作Rectangle類別public class Rectangle extends Shape protected double side_X , side_Y;public Rectangle()side_X = 0; side_Y=0 ;public Rectangle(double x, double y) side_X = x ; side_Y = y;public void computeArea()

6、 area = side_X * side_Y ;public void setSideLength(double x, double y) side_X = x ; side_Y=y;繼承類別Square類別public class Square extends Rectangle public Square(double n) side_X = n ; side_Y= n;public void setSideLength(double l) side_X= l ; side_Y = l; Circle類別public class Circle extends Shape private

7、double radius;final private double PI = 3.414; public Circle()radius = 0;public Circle(double r) radius = r ;public void computeArea() area = Math.pow(radius,2.0)*PI;public void setRadius(double r) radius = r ; 類別多型特過類別繼承階層,一個物件變數可以指 到不同的類別Shape s ; s = new Rectangle(2, 2); puteArea(); s.printArea()

8、;s = new Square(2); puteArea(); s.printArea();s = new Circle(2); puteArea(); s.printArea();反思(1/3)學習單4:請同學進行學習反思,你從此 問題學到什麼?本次練習,你覺得設計一個類別需要考慮到 ?抽象類別與其他類別的關係 本次練習,你覺得類別的建立有哪些策略?從名詞找類別根據領域知識定義類別與資料成員根據領域知識定義類別的方法成員根據領域知識定義類別之間的關係反思(2/3)請同學進行學習反思,你從此問題學到什 麼?本次練習,你覺得JAVA有哪些特性可以支援 物件導向程式設計?何謂抽象類別?方法的覆載(overloading)反思(3/3)請同學進行學習反思,你從此問題學到什 麼?本次練習,你覺得物件導向程式有哪些不錯 的測試策略與技巧?本次練習,你覺得物件導向設計具有哪些優 點?(以本問題為例,舉例具體說明)透過繼承簡化系統複雜度更清晰的問題模式與自然的計算邏輯容易測試與維護延伸學習請同學列舉其它與本問題相關的學習類別的繼承關係為何何謂抽象類別,抽象方法請同學就本次學習的結果,設計測驗題目抽象類別與方法抽象類別具有共用的資料與方法成員不能實際產生物件方法的覆載(Overloading)子類別的方法可以覆載父類別的相同名稱 的方法

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号