– 定义一个圆类(Circle),其所在的包为bzu.info.software;定义一个圆柱类Cylinder,其所在的包为bzu.info.com;定义一个主类A,其所在的包也为bzu.info.com,在A中生成一个Cylinder对象,并输出其体积。编译并运行该类。
Circle类:
package bzu.info.software;
public class Circle {
double radius,area;
public Circle(double r) {
radius=r;
}
public void setRadius(double r) {
radius=r;//设置圆的半径
}
public double getRadius() {
return radius;//获取圆的半径
}
public double getArea() {
area= 3.14*radius*radius;//求圆的面积
return area;
}
}
Cylinder类:
package bzu.info.com;
import bzu.info.software.Circle;
public class Cylinder {
double height;
double volume;
//圆柱的底bottom是Circle的类型对象
Circle bottom;
Cylinder(Circle b ,double h){//构造方法,将Circle类的实例的引用传递给bottom
bottom=b;
height=h;
}
double getVolume() {//通过bottom获取圆的底面积以及求得圆柱的体积
volume=bottom.getArea()*height;
return volume;
}
double getBottomRadius() {//获取圆柱底部半径
return bottom.getRadius();
}
}
A类:
package bzu.info.com;
import bzu.info.software.*;
import bzu.info.com.*;
public class A {
public static void main(String[] args) {
// TODO Auto-generated method stub
Circle circle =new Circle (3.0);
Cylinder cy=new Cylinder(circle,5.0) ;
System.out.println("输出圆的体积:"+cy.getVolume()+"输出圆柱的半径:"+cy.getBottomRadius()+"输出圆柱的高:"+cy.height);
}
}