Shape类
package test;
public interface Shape {
final static double PI=3.14;
double area();
}
Circle类
package test;
public class Circle implements Shape {
private double radius;
public Circle() {
}
public Circle(double radius) {
this.radius = radius;
}
@Override
public double area() {
return PI*radius*radius ;
}
/**计算周长*/
public double circumference() {
return 2*PI*radius;
}
public double getRadius() {
return radius;
}
public void setRadius(double radius) {
this.radius = radius;
}
}
Cylinder类
package test;
public class Cylinder extends Circle {
public double height;// 圆柱高度
public Cylinder(double radius, double height) {// 构造方法
super(radius);
this.height = height;
}
/**计算体积*/
public double volume(){
return area()*height;
}
public double surfaceArea(){
return area()*2+circumference()*height;
}
public double getHeight() {
return height;
}
public void setHeight(double height) {
this.height = height;
}
}
Example2类
import test.Circle;
import test.Cylinder;
public class Example2 {
public static void main(String[] args) {
/**定义圆*/
Circle cir1=new Circle(1);//半径=1
Circle cir2=new Circle(2);//半径=2
System.out.println("圆cir1的周长="+cir1.circumference());
System.out.println("圆cir1的面积="+cir1.area());
System.out.println("圆cir2的周长="+cir2.circumference());
System.out.println("圆cir2的面积="+cir2.area());
/**定义圆柱*/
Cylinder cy1=new Cylinder(3, 4);//底面半径=3,高=4
Cylinder cy2=new Cylinder(5, 6);//底面半径=5,高=6
System.out.println("圆柱1的底圆面积="+cy1.area());
System.out.println("圆柱1的底圆周长="+cy1.circumference());
System.out.println("圆柱1的体积="+cy1.volume());
System.out.println("圆柱1的表面积="+cy1.surfaceArea());
System.out.println("圆柱2的底圆面积="+cy2.area());
System.out.println("圆柱2的底圆周长="+cy2.circumference());
System.out.println("圆柱2的体积="+cy2.volume());
System.out.println("圆柱2的表面积="+cy2.surfaceArea());
}
}
多少年了,还是这些题。