永发信息网

求java大神帮忙

答案:2  悬赏:70  手机版
解决时间 2021-11-21 01:58
求java大神帮忙
最佳答案
普通类
public class CircularA {
//求圆的表面积
public double surfaceArea(double radius) {
return 4*Math.PI*radius*radius;
}
//圆内接正方形面积
public double withinSquare(double radius) {
return 6*(Math.sqrt(3)/6)*radius*(Math.sqrt(3)/6)*radius;
}
//圆外接正方形面积
public double outsideSquare(double radius) {
return radius*2*radius*2*6;
}
}
抽象类
public abstract class CircularB {
//求圆的表面积
public abstract double surfaceArea(double radius) ;
//圆内接正方形面积
public abstract double withinSquare(double radius) ;
//圆外接正方形面积
public abstract double outsideSquare(double radius);
}
接口
public interface CircularC {
//求圆的表面积
public double surfaceArea(double radius) ;
//圆内接正方形面积
public double withinSquare(double radius);
//圆外接正方形面积
public double outsideSquare(double radius) ;
}
继承抽象类
public class CircularD extends CircularB {
@Override
public double surfaceArea(double radius) {
return 4*Math.PI*radius*radius;
}
@Override
public double withinSquare(double radius) {
return 6*(Math.sqrt(3)/6)*radius*(Math.sqrt(3)/6)*radius;
}
@Override
public double outsideSquare(double radius) {
return radius*2*radius*2*6;
}
}
实现接口
public class CircularE implements CircularC {
@Override
public double surfaceArea(double radius) {
return 4*Math.PI*radius*radius;
}
@Override
public double withinSquare(double radius) {
return 6*(Math.sqrt(3)/6)*radius*(Math.sqrt(3)/6)*radius;
}
@Override
public double outsideSquare(double radius) {
return radius*2*radius*2*6;
}
}
public class Test {
//测试普通类
public void testA(double redius) {
CircularA circularA = new CircularA();
//求圆的表面积(传入半径)
double s1 = circularA.surfaceArea(redius);
System.out.println(s1);
//圆内接正方形面积(出入半径)
double s2 = circularA.withinSquare(redius);
System.out.println(s2);
//圆外接正方形面积(传入半径)
double s3 = circularA.outsideSquare(redius);
System.out.println(s3);
}
//测试抽象类
public void testB(double redius) {
//多态。声明父类对象,new 子类。
CircularB circular = new CircularD();
//求圆的表面积(传入半径)
double s1 = circular.surfaceArea(redius);
System.out.println(s1);
//圆内接正方形面积(出入半径)
double s2 = circular.withinSquare(redius);
System.out.println(s2);
//圆外接正方形面积(传入半径)
double s3 = circular.outsideSquare(redius);
System.out.println(s3);
}
//测试接口
public void testC(double redius) {
CircularC circular = new CircularE();
//求圆的表面积(传入半径)
double s1 = circular.surfaceArea(redius);
System.out.println(s1);
//圆内接正方形面积(出入半径)
double s2 = circular.withinSquare(redius);
System.out.println(s2);
//圆外接正方形面积(传入半径)
double s3 = circular.outsideSquare(redius);
System.out.println(s3);
}
public static void main(String[] args) {
Test test = new Test();
test.testA(10);
test.testB(10);
test.testC(10);
}
}
这里说明一点:抽象类可以定义一个完整的方法,直接由子类继承,或者定义抽象方法,由子类重写
全部回答
//家3527,837346没有问题哒
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
2个用电器都是用直流12v1.5a的能共用一个直流
彩韵美甲地址在哪,我要去那里办事,
别墅离后面高楼很近好不好
同房后十三天有感觉吗
爱亲母婴是加盟孕婴店10大品牌吗?
此部带有很囧BL色彩的港漫叫什么名字?
监控跨界侦测什么意思
出虚汗而且特别多,请问是什么地方虚
公狗几岁成熟
变种女狼3详细剧情
2016年农历9月初可以打井吗
从海口火车站到灵镇东和村坐多少路公交
x平方+4y平方=16
关于美版note8有几个问题要请教
ug10.0安装完毕出现初始化错误_15怎么解决?
推荐资讯
西海村民委员会地址在什么地方,想过去办事,
2018年新乡市哪里能看男孩女孩?比较仔细,清
请问填✔还是✖
全顺汽油2·4l旧车多少钱一公里
2016年中国b2c和c2c网购交易额是多少
考自动控制可以带计算器吗?
哪个学校校徽是皇马呀——在《玩大了》看到的
易门那里可以给狗狗打预防针
“属于3类商标注册的产品商标,是不是任何印
寻找二胡音太尖解决办法.
泰国1万珠等于多少人民币
如何运营好一个小说网站
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?