目录
1.新建Triangle.java程序:定义图形类(Shape)的子类三角形类(Triangle),分别计算其面积及周长。
2.新建Rectangle.java程序:定义图形类(Shape)的子类矩形类(Rectangle),分别计算其面积及周长。
3.新建Circle.java程序:定义图形类(Shape)的子类圆形类(Circle),分别计算其面积及周长。
4.新建Square.java程序:定义矩形类(Rectangle)的子类正方形类(Square),分别计算其面积及周长。提示:请巧妙利用其父类矩形的变量和方法。
题目
1.新建Triangle.java程序:
定义图形类(Shape)的子类三角形类(Triangle),分别计算其面积及周长。
提示:三角形面积S,三条边为a、b、c
p=((a+b+c)/2)
S=sqrt[p(p-a)(p-b)(p-c)]
2.新建Rectangle.java程序:
定义图形类(Shape)的子类矩形类(Rectangle),分别计算其面积及周长。
3.新建Circle.java程序:
定义图形类(Shape)的子类圆形类(Circle),分别计算其面积及周长。
4.新建Square.java程序:
定义矩形类(Rectangle)的子类正方形类(Square),分别计算其面积及周长。提示:请巧妙利用其父类矩形的变量和方法。
代码
1.Shape.java
package item11.example;
public class Shape {
public double length(){
return 0;
}
public double area() {
return 0;
}
}
2.Triangle.java
package item11.example;
public class Triangle extends Shape {
private double a;
private double b;
private double c;
public Triangle(double a,double b,double c) {
super();
this.a=a;
this.b=b;
this.c=c;
}
public double length() {
return a+b+c;
}
public double area() {
double p= (a+b+c)/2;
return Math.sqrt(p*(p-a)*(p-b)*(p-c));
}
public double getA() {
return a;
}
public void setA(double a) {
this.a = a;
}
public double getB() {
return b;
}
public void setB(double b) {
this.b = b;
}
public double getC() {
return c;
}
public void setC(double c) {
this.c = c;
}
}
3.Rectangle.java
package item11.example;
public class Rectangle extends Shape {
private double width;
private double height;
public Rectangle(double height,double width) {
super();
this.height=height;
this.width=width;
}
public double length() {
return 2*(width+height);
}
public double area() {
return width*height;
}
public double differ() {
return Math.abs(height-width);
}
public double getWidth() {
return width;
}
public void setWidth(double width) {
this.width = width;
}
public double getHeight() {
return height;
}
public void setHeight(double height) {
this.height = height;
}
}
4.Circle.java
package item11.example;
public class Circle extends Shape {
private double radius;
public Circle(double radius) {
super();
this.radius = radius;
}
public double length() {
return 3.14*2*radius;
}
public double area() {
return 3.14*radius*radius;
}
}
5.Square.java
package item11.example;
public class Square extends Rectangle {
public double edge;
public Square(double edge) {
super(edge,edge);
this.edge = edge;
}
public double getEdge() {
return edge;
}
public void setEdge(double edge) {
this.edge = edge;
}
}
6.Test.java
package item11.example;
public class Test {
public static void main(String[] args) {
Shape rectangle = new Rectangle(5,10);
Shape square = new Square(3);
Shape triangle = new Triangle(3, 4, 5);
Shape circle = new Circle(2);
System.out.println("矩形:"+"周长"+rectangle.length()+"\t面积"+rectangle.area());
System.out.println("正方形:"+"周长"+square.length()+"\t面积"+square.area());
System.out.println("三角形:"+"周长"+triangle.length()+"\t面积"+triangle.area());
System.out.println("圆形:"+"周长"+circle.length()+"\t面积"+circle.area());
}
}