任务一:
1)定义一个抽象类Shape,它有一个计算面积的抽象方法calArea。
package ruan2;
public abstract class Shape {
abstract void calArea();
}
2)定义一个三角形类Triangle。它有两个属性n、m,分别表示三角形的底和高。另外,它必须继承于Shape类,并实现calArea方法来计算三角形的面积。
package ruan2;
public class Triangle extends Shape{
private double n;
private double m;
public Triangle() {
super();
}
public Triangle(double n, double m) {
super();
this.n = n;
this.m = m;
}
@Override
void calArea() {
double Tri=(this.n*this.m)/2;
System.out.println("三角形的面积:"+Tri);
}
}
3)定义一个矩形类Rectangle。它有两个属性n、m,分别表示矩形的长和宽。另外,它必须继承于Shape类,并实现calArea方法来计算矩形的面积。
package ruan2;
public class Rectangle extends Shape {
private double n;
private double m;
public Rectangle() {
super();
}
public Rectangle(double n, double m) {
super();
this.n = n;
this.m = m;
}
@Override
void calArea() {
double Ret=this.n*this.m;
System.out.println("矩形的面积:"+Ret);
// TODO Auto-generated method stub
}
}
4)定义一个圆类Circle。它有一个属性n,表示圆形的半径。另外,它必须继承于Shape类,并实现calArea方法来计算圆形的面积。
package ruan2;
public class Circle extends Shape{
private double n;
public Circle() {
super();
}
public Circle(double n) {
super();
this.n = n;
}
@Override
void calArea() {
// TODO Auto-generated method stub
double Cir=3.14*(this.n*this.n);
System.out.println("圆形的面积"+Cir);
}
}
5)分别创建一个三角形对象、一个矩形对象、一个圆形对象,然后将它们存入到一个数组中,最后将数组中各类图形的面积输出到屏幕上。
package ruan2;
public class Test {
public static void main(String[] args) {
Shape x=new Triangle();
Shape y=new Rectangle();
Shape z=new Circle ();
Shape[] Shape=new Shape[3];
Shape[0]=new Triangle(2,2);
Shape[1]=new Rectangle(2,2);
Shape[2]=new Circle(1);
//自己可以改数值
for (int i = 0; i < Shape.length; i++) {
Shape[i].calArea();
}
System.out.println("一键三连,谢谢");
}
}
运行结果