Java:编写一个测试程序,分别使用无参构造方法、RegularPolygon(6,4)和RegularPolygon(10,4,5.6,7.8)创建三个RegularPolygon对象。显示每个对象

(几何:正n边形)在一个正n边形中,所有边的长度都相同,且所有角的度数都相同(即这个多边形是等边等角的)。
设计一个名为RegularPolygon的类,该类包括:
●一个名为n的int型私有数据域定义多边形的边数,默认值为3。
●一个名为side的double型私有数据域存储边的长度,默认值为1。
●一个名为x的double型私有数据域定义多边形中点的x坐标,默认值为0。
●一个名为y的double型私有数据域定义多边形中点的y坐标,默认值为0。
●一个创建带默认值的正多边形的无参构造方法。
●一个能创建带指定边数和边长度、中心在(0,0)的正多边形的构造方法。
●一个能创建带指定边数和边长度、中心在(x,y)的正多边形的构造方法。
●所有数据域的访问器和修改器。
●一个返回多边形周长的方法getPerimeter(。
●一个返回多边形面积的方法getArea()。计算正多边形面积的公式是:(ns^2)/(4tan(PI/n))
编写一个测试程序,分别使用无参构造方法、RegularPolygon(6,4)和RegularPolygon(10,4,5.6,7.8)创建三个RegularPolygon对象。显示每个对象的周长和面积。

代码:
class RegularPolygon{
private int n=3;
private double side=1;
private double x=0;
private double y=0;
//以下为构造方法(要用方法重载)
RegularPolygon(){};
RegularPolygon(int newn,int news){
n=newn;
side=news;
x=0;
y=0;
};
RegularPolygon(int newn,int news,double newx,double newy){
n=newn;
side=news;
x=newx;
y=newy;
};
//以下为所有数据域的访问器与修改器
public void setn(int newn){
n=newn;
};
public void setside(double news){
side=news;
};
public void setx(double newx){
x=newx;
};
public void sety(double newy){
y=newy;
};
public int getn(){
return n;
};
public double getside(){
return side;
};
public double getx(){
return x;
};
public double gety(){
return y;
};
public double getPerimeter(){
return nside;
};
public double getArea(){
double p=3.141592535;
return (n
sideside)/(4Math.tan(p/n));
};
}
public class test{
public static void main(String[] args){
RegularPolygon r1=new RegularPolygon();
System.out.println(“r1的周长=”+r1.getPerimeter()+" r1的面积="+r1.getArea());
RegularPolygon r2=new RegularPolygon(6,4);
System.out.println(“r2的周长=”+r2.getPerimeter()+" r2的面积="+r2.getArea());
RegularPolygon r3=new RegularPolygon(10,4,5.6,7.8);
System.out.println(“r3的周长=”+r3.getPerimeter()+" r3的面积="+r3.getArea());
}
}

此文为原创,转载请注明出处。
如对你有帮助,请给我一个赞!

  • 5
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值