Java之簡單圖形面積計算


設計一個類層次,定義一個抽象類--形狀(類名:shape)。
其中包括求形狀的面積抽象方法(方法名:calArea())。
繼承該抽象類定義三角形(Triangle)、矩形(Rectangle)、圓(Circle)並分別存入一個數組中。
將數組中各類圖形的面積輸出。

Shape:

package com.cdp.shape;

public abstract class Shape {
	abstract double calArea();
}

Triangle:

package com.cdp.shape;

public class Triangle extends Shape {
	// 屬性
	private double a, h;

	// 構造方法
	public Triangle(double a, double h) {
		this.a = a;
		this.h = h;
	}

	@Override
	double calArea() {
		// TODO Auto-generated method stub
		return a * h / 2;
	}

}

Rectangle:

package com.cdp.shape;

public class Rectangle extends Shape {
	private double w, h;

	public Rectangle(double w, double h) {
		this.h = h;
		this.w = w;
	}

	@Override
	double calArea() {
		// TODO Auto-generated method stub
		return w * h;
	}

}

Circle:

package com.cdp.shape;

public class Circle extends Shape {
	private double r;

	public Circle(double r) {
		this.r = r;
	}

	@Override
	double calArea() {
		// TODO Auto-generated method stub
		return 3.14 * r * r;
	}

}

Task測試類:

package com.cdp.shape;

public class Task {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		// 定義一個形狀數組
		Shape[] s = new Shape[3];
		// 將三角形、矩形、圓形放入數組中
		s[0] = new Triangle(3, 4);
		s[1] = new Rectangle(5, 6);
		s[2] = new Circle(2);

		// 輸出面積
		System.out.println("三角形的面積為" + s[0].calArea());
		System.out.println("矩形的面積是:" + s[1].calArea());
		System.out.println("圓形的面積是:" + s[2].calArea());
	}

}

運行結果:

三角形的面積為6.0
矩形的面積是:30.0
圓形的面積是:12.56


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM