3.第二单元任务五实训:通过程序设计几何图形接口(Shape),实现类矩形(Rectangle)、圆形(Circle)、正方形(Square)几种类型,能够利用接口和多态性计算几何图形的面积和周长并显

3.第二单元任务五实训:通过程序设计几何图形接口(Shape),实现类矩形(Rectangle)、圆形(Circle)、正方形(Square)几种类型,能够利用接口和多态性计算几何图形的面积和周长并显示。

public class ShapeTest {

       publicstatic void print(Shape shape){

              System.out.println(shape.getClass()+":"+"面积:"+shape.area());

              System.out.println(shape.getClass()+":"+"周长:"+shape.perimeter());

       }

       publicstatic void main(String[] args) {

              Shapeshape=new Rectangle(4,5);

              print(shape);

              shape=newCircle(4);

              print(shape);

              shape=newSquare(5);

              print(shape);

       }

}


public interface Shape {
	public double area();				//计算面积
	public double perimeter();				//计算周长
}

 class Square implements Shape {
	double a;						//边长
	public Square(double a) {
		this.a = a;
	}
	public double area() {
		return a*a;
	}
	public double perimeter() {
		return 4*a;
	}
}
class Rectangle implements Shape {
	double a;						//长或宽
	double b;						//长或宽
	public Rectangle(double a, double b) {
		this.a = a;
		this.b = b;
	}
	public double area() {
		return a*b;
	}
	public double perimeter() {
		return 2*(a+b);
	}
}
class Circle implements Shape {
	double radius;					//半径
	public Circle(double radius) {
		this.radius = radius;
	}
		public double area() {
		return Math.PI*radius*radius;
	}
	public double perimeter() {
		return 2*Math.PI*radius;
	}
}


你可能感兴趣的:(java)