《Java一个圆形类的实现.doc》由会员分享,可在线阅读,更多相关《Java一个圆形类的实现.doc(2页珍藏版)》请在金锄头文库上搜索。
1、1 编写一个圆形类Circle,包含: 一个protected属性:圆形的半径radius。两个构造器方法: (1)一个带有两个参数的构造器方法,用于将radius属性初化; (2)一个不带参数的构造器,将半径初始化为10.0。两个方法: (1) 求圆形面积的方法area() (2) 求圆形周长的方法perimeter() public class Circle protected double radius;final double PI = 3.14;Circle(double radius)this.radius = radius;Circle()this.radius = 10.0;p
2、ublic double area()return PI*this.radius*this.radius;public double perimeter()return 2*PI*this.radius;2 通过继承Circle类编写一个具有确定位置的矩形类PlainCircle,其确定位置用圆形的圆心坐标来标识,包含: 添加两个属性:圆形圆心的坐标startX和startY。两个构造器方法: (1) 带3个参数的构造器方法,用于对startX、startY、radius属性初始化; (2) 不带参数的构造器方法,将圆形初始化为圆心坐标和半径都为为10.0的圆形; 添加两个方法:计算某个点到圆
3、心的距离distance(double aX,double aY, double bX, double bY)判断某个点是否在圆形内部的方法isInside(double x,double y)。如在圆形内,返回true, 否则,返回false。class PlainCircle extends Circledouble StartX;double StartY;PlainCircle (double x, double y, double radius)this.StartX = x;this.StartY = y;this.radius = radius;PlainCircle()this
4、.StartX = 10.0;this.StartY = 10.0;this.radius = 10.0;public static double distance(double aX,double aY, double bX, double bY)/* * Math.hypot()是Java提供的方法,用来计算()的平方根; * bX-aX表示横坐标的差值,bY-aY表示纵坐标的差值 */return Math.hypot(bX-aX, bY-aY);public boolean isInside(double x, double y)if(distance(x, y, this.Start
5、X, this.StartY)this.radius)return true;elsereturn false;3 编写PlainCircle类的测试程序(1) 创建一个圆心坐标为(2.0,2.0),半径为4.0的圆形对象; (2) 计算机并打印输出圆形的面积和周长; (3) 判断点(3.0,3.0)是否在圆形内,并打印输出相关信息。class Test1public static void main(String args)PlainCircle p = new PlainCircle(2.0, 2.0,4.0);System.out.println(p.area();System.out.println(p.perimeter();System.out.println(p.distance(p.StartX, p.StartY, 6.0, 7.0);System.out.println(Is point(3.0, 3.0) in the circle?);System.out.println(Its + p.isInside(3.0, 3.0);