题目详情:
1、定义类Cal,包括:成员变量: height (高),radius (半径)成员方法:
setHeight0,setRadius0,实现对因杜体的高度和底半径初始化getArea0,getVolume0,实现对因柱体的表面积和体积的计算2、构造方法:Cal0,无参数,默认值height=10,radius=105;Cal(int h,int r),有参数,按实参进行相应的成尽变量初始化。
3定义子类:SubCal (长方体),子类含成员: length和width,重写方法getArea(),getVolume,实现对长方体的表面积和体积的计算
4、在主方法中对父类和子类进行实例化(有参数和无参数),并输出相应的计算结果。
解题思路:
类的应用
代码实现:
public class d3 {
public static void main(String[] args) {
Cal c1 = new Cal();
System.out.println(c1.getArea());
System.out.println(c1.getVolume());
Cal c2 = new Cal(1,2);
System.out.println(c2.getVolume());
System.out.println(c2.getArea());
SubCal d1 = new SubCal();
System.out.println(d1.getArea());
System.out.println(d1.getVolume());
SubCal d2 = new SubCal(2,2,3);
System.out.println(d2.getArea());
System.out.println(d2.getVolume());
}
}
class Cal{
int height;
int radius;
public Cal() {
this.height =10;
this.radius = 105;
}
public Cal(int height, int radius) {
this.height = height;
this.radius = radius;
}
public int getHeight() {
return height;
}
public void setHeight(int height) {
this.height = height;
}
public int getRadius() {
return radius;
}
public void setRadius(int radius) {
this.radius = radius;
}
public double getArea() {
return Math.PI*radius*radius*2+2*Math.PI*radius*height;
}
public double getVolume() {
return Math.PI*radius*radius*height;
}
}
class SubCal extends Cal{
int length;
int width;
public SubCal() {
this.length = 5;
this.width = 5;
}
public SubCal(int length, int width,int height) {
this.length = length;
this.width = width;
this.height = height;
}
public double getArea(){
return length*width*2+length*height*2+height*width*2;
}
public double getVolume(){
return length*width*height;
}
}
答案:
如上