欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

利用接口及抽象类设计实现

程序员文章站 2022-03-18 14:08:10
1.定义接口圆形CircleShape(),其中定义常量PI,默认方法area计算圆面积。 2.定义圆形类Circle实现接口CircleShape,包含构造方法与求周长方法。 3.定义圆柱继承Circle实现接口CircleShape,包含构造方法,圆柱表面积,体积。 4.从控制台输入圆半径,输出 ......

1.定义接口圆形circleshape(),其中定义常量pi,默认方法area计算圆面积。

2.定义圆形类circle实现接口circleshape,包含构造方法与求周长方法。

3.定义圆柱继承circle实现接口circleshape,包含构造方法,圆柱表面积,体积。

4.从控制台输入圆半径,输出圆面积及周长。

5.从控制台输入圆柱底面半径及高,输出圆柱底面积、圆柱表面积及体积。


public class yuan {

public static void main(string[] args) {
circle test=new circle(5);
system.out.println("周长为"+test.makec());
system.out.println("面积为"+test.area(test.ban));
cylinder test2=new cylinder(10, 5);
system.out.println("圆柱底面积为"+test2.dimianji());
system.out.println("圆柱表面积为"+test2.getbmj());
system.out.println("圆柱体积为"+test2.gettj());
}

}
interface circleshape{
public double pi=3.1415926535;
default double area(double ban) {
return pi*math.pow(ban, 2);
}
}
class circle implements circleshape{
public double ban;
public circle(double ban) {this.ban=ban;
}
public double makec() {
return 2*pi*ban;
}
}
class cylinder extends circle implements circleshape{//先继承后实现,记住顺序
double yzdmbj;
double yzh;
public cylinder(double yzh,double ban){super(ban);

this.yzh=yzh;
}
public double getbmj(){
return 2*area(ban)+2*pi*ban*yzh;
}
public double dimianji() {
return area(ban);
}
public double gettj() {
return area(ban)*yzh;
}
}