类的封装与抽象

package zhl;

public class Circle {                                       //圆类
private float Radius;                                      //私有的成员变量存放圆的半径

public double getRadius(){
return Radius;
}
public void setRadius(double radius){
Radius=radius;
}
public Circle(){                                                 //构造方法为空,即半径设为零

System.out.println("这是一圆");

System.out.println("圆的半径:"+Radius);

}
public Circle(double r){                                   //构造方法重载,对圆的半径进行初始化
this.Radius=r;
}
public double getArea(double r){                  //成员方法计算圆的面积
return Math.PI*r*r;

}
public double getPerimeter(double r){          //成员方法计算圆的周长
return 2*Math.PI*r;

}
public void show(){
System.out.println("圆的面积是" + this.getArea(Radius));
System.out.println("圆的周长是" + this.getPerimeter(Radius));
}
}

 

package zhl;

public class Cylinder extends Circle {                          // Cylinder类继承Circle类

private double hight;
public Cylinder(double r,double h){
super(r);
this.hight=h;
}
public double getVolume(){
return Math.PI*this.getRadius()*this.getRadius()*hight;

}
public void showVolume(){
System.out.println("圆柱的体积:"+this.getVolume());


}
}

package zhl;

public class test {
public static void main(String[] args){
Circle cc=new Circle();
cc.show();
Cylinder ccc=new Cylinder(5,3);
ccc.showVolume();

}
}



posted @ 2018-04-24 20:01  zhanghuanl  阅读(115)  评论(0编辑  收藏  举报