繼承和多態(tài)實驗報告_第1頁
繼承和多態(tài)實驗報告_第2頁
繼承和多態(tài)實驗報告_第3頁
繼承和多態(tài)實驗報告_第4頁
繼承和多態(tài)實驗報告_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、 實驗項目名稱 : 繼承和多態(tài) (所屬課程: Java語言程序設計 )院 系: 專業(yè)班級: 姓 名:學號: 實驗地點: 指導老師:本實驗項目成績: 教師簽字: 日期: 1實驗目的 (1)掌握類的繼承機制。(2)熟悉類中成員變量和方法的訪問控制。(3)熟悉方法或構造方法多態(tài)性。2.實驗內容(1)模擬編寫程序,理解類的繼承、多態(tài)、繼承和多態(tài)規(guī)則。(2)獨立編程,實現(xiàn)類的繼承和多態(tài)。3.實驗作業(yè)設計一個類Shape(圖形)包含求面積和周長的area()方法和perimeter()方法以及設置顏色的方法SetColor(),并利用Java多態(tài)技術設計其子類Circle(圓形)類、Rectangle(矩

2、形)類和Triangle(三角形)類,并分別實現(xiàn)相應的求面積和求周長的方法。每個類都要覆蓋toString方法。海倫公式:三角形的面積等于s(s-a)(s-b)(s-c)的開方,其中s=(a+b+c)/2程序代碼為:Class包package Class;public class Shape private String color = "while"public Shape(String color)this.color = color;public void setColor(String color)this.color = color;public String g

3、etColor()return color;public double getArea()return 0;public double getPerimeter()return 0;public String toString()return "color:" + color;package Class;public class Circle extends Shape private double radius;public Circle(String color,double radius) super(color);this.radius = radius;publi

4、c void setRadius(double radius)this.radius = radius;public double getRadius()return radius;public double getCircleArea()return 3.14*radius*radius;public double getCirclePerimeter()return 3.14*2*radius;public String toString() return "The Area is:" + getCircleArea() + "nThe Perimeter i

5、s:" + getCirclePerimeter();package Class;public class Rectangle extends Shapeprivate double width;private double height;public Rectangle(String color,double width,double height) super(color);this.width = width;this.height = height;public void setWidth(double width)this.width = width;public doub

6、le getWidth()return width;public void setHeight(double height)this.height = height;public double getHeight()return height;public double getRectangleArea()return width*height;public double getRectanglePerimeter()return 2*(width + height);public String toString()return "The Area is:" + getRe

7、ctangleArea() + "nThe Perimeter is:" + getRectanglePerimeter();package Class;public class Triangle extends Shapeprivate double a;private double b;private double c;private double s;public Triangle(String color,double a,double b,double c, double s)super(color);this.a = a;this.b = b;this.c =

8、c;this.s = s;public void setA(double a)this.a = a;public double getA()return a;public void setB(double b)this.b = b;public double getB()return b;public void setC(double c)this.c = c;public double getC()return c;public double getTriangleArea()return Math.sqrt(s*(s-a)*(s-b)*(s-c);public double getTria

9、nglePerimeter()return a + b + c;public String toString()return "The Area is:" + getTriangleArea() + "nThe Perimeter is:" + getTrianglePerimeter();Main包package Main;import Class.Shape;import Class.Circle;import Class.Rectangle;import Class.Triangle;import java.util.Scanner;public

10、class test public static void main(String args) Scanner input = new Scanner(System.in);System.out.print("請輸入圓的半徑: ");double radius = input.nextDouble();Circle circle = new Circle(null, radius);System.out.println(circle.toString(); System.out.print("n請輸入矩形的寬: "); double width = in

11、put.nextDouble(); System.out.print("請輸入矩形的高: "); double height = input.nextDouble();Rectangle rectangle = new Rectangle(null, width, height);System.out.println(rectangle.toString(); System.out.print("n請輸入三角形的第一條邊 a: "); double a = input.nextDouble(); System.out.print("請輸入三角形的第二條邊 b: "); double b = input.nextDouble(); System.out.print("請輸入三角形的第三條邊 c: "); double c = input.nextDouble(); doub

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論