①定义一个抽象类 Shape,它有一个计算面积的抽象方法 calArea。 ②定义一个三角形类 Triangle。它有两个属性 n、m,分别表示三角形的底和
高。另外,它必须继承于 Shape 类,并实现 calArea 方法来计算三角形的面积。
③定义一个矩形类 Rectangle。它有两个属性 n、m,分别表示矩形的长和宽。
另外,它必须继承于 Shape 类,并实现 calArea 方法来计算矩形的面积。
④定义一个圆类 Circle。它有一个属性 n,表示圆形的半径。另外,它必须继
承于 Shape 类,并实现 calArea 方法来计算圆形的面积。
⑤分别创建一个三角形对象、一个矩形对象、一个圆形对象,然后将它们存
入到一个数组中,最后将数组中各类图形的面积输出到屏幕上。
public class ShapeTest {
public static void main(String[] args) {
Triangle triangle = new Triangle(10, 5);
Rectangle rect = new Rectangle(10, 20);
Circle circle = new Circle(10);
System.out.println("三角形面积:"+triangle.calArea());
System.out.println("矩形面积:"+rect.calArea());
System.out.println("圆面积:"+circle.calArea());
}
}
/*
⑤分别创建一个三角形对象、一个矩形对象、一个圆形对象,然后将它们存
入到一个数组中,最后将数组中各类图形的面积输出到屏幕上。
* */
abstract class Shape{
abstract double calArea();
}
class Triangle extends Shape{
private int n;
private int m;
public Triangle() {}
public Triangle(int n,int m) {
this.n = n;
this.m = m;
}
public int getN() {
return n;
}
public void setN(int n) {
this.n = n;
}
public int getM() {
return m;
}
public void setM(int m) {
this.m = m;
}
@Override
double calArea() {
return n*m/2.0;
}
}
class Rectangle extends Shape{
private int n;
private int m;
public Rectangle() {}
public Rectangle(int n,int m) {
this.n = n;
this.m = m;
}
public int getN() {
return n;
}
public void setN(int n) {
this.n = n;
}
public int getM() {
return m;
}
public void setM(int m) {
this.m = m;
}
@Override
double calArea() {
return n*m;
}
}
class Circle extends Shape{
private int n;
public Circle() {}
public Circle(int n) {
this.n = n;
}
public int getN() {
return n;
}
public void setN(int n) {
this.n = n;
}
@Override
double calArea() {
return Math.PI*n*n;
}
}