设计一个圆Circle 类, 输出圆的面积和一个点在不在圆内

设计一个圆circle类,包含圆心和半径两个属性:

1、编写合理的构造方法。

2、编写计算圆面积的方法getArea()。

3、编写计算圆是否包含指定的点contains(Point),contains(int x, int y)。

 

如题,要求写一个圆类,实际上还有一个隐含的要求——编写一个点类Point,它的属性有两个一个是x坐标,一个是y坐标

我们可以直接利用这个点类实例化一个圆心,给圆设计一个圆心属性,然后计算其他点到圆心的距离就知道点是不是在圆内了,代码如下:

​​public class Demo {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Point point = new Point();//实例化一个点类
        point.x = 5.0;//初始化点的x坐标
        point.y = 5.0;//初始化点的y坐标

        Point center = new Point();//实例化一个点类作为圆心
        center.x = 2.0;
        center.y = 2.0;

        Circle circle = new Circle();//实例化一个圆类
        circle.radius = 3.0;//半径属性
        circle.center=center;//圆心属性

        System.out.println(circle.contains(point));
        System.out.println("圆的面积是: ");//这里仅仅是输出一个字符串,提示接下来输出面积的
        System.out.println(circle.getArea());//输出面积

    }

}


class Circle{
    Point center;//圆的属性有两个,圆心和半径,这个是圆心
    double radius;//这个是半径
    public boolean contains(Point p){
        double distance = Math.sqrt((center.x-p.x)*(center.x-p.x)+(center.y-p.y)*(center.y-p.y));
        return distance <= radius;
    }
    public double getArea() {
        double area = Math.PI*radius*radius;//这里计算圆的面积
        return area;//返回圆的面积
    }

}

class Point{//点的类
    double x;
    double y;
}

 

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值