TestCircle?.java
class="java" name="code">class Point { private double x; private double y; Point(double x1, double y1) { x = x1; y = y1; } public double getX() { return x; } public double getY() { return y; } public void setX(double i) { x = i; } public void setY(double i) { y = i; } } class Circle { private Point o; //圆心 private double radius; //半径 Circle(Point p, double r) { o = p; radius = r; } Circle(double r) { o = new Point(0.0, 0.0); radius = r; } boolean contains(Point p) { double x = p.getX() - o.getX(); double y = p.getY() - o.getY(); if(x*x + y*y > radius * radius) return false; else return true; } public void setO(double x, double y) { o.setX(x); o.setY(y); } public Point getO() { return o; } public double getRadius() { return radius;} public void setRadius(double r) { radius = r;} public double area() { //求圆的面积 return 3.14 * radius * radius; } } public class TestCircle { public static void main(String args[]) { Circle c1 = new Circle(new Point(1.0,2.0), 2.0); Circle c2 = new Circle(5.0); System.out.println("c1:("+c1.getO().getX()+"," +c1.getO().getY()+"),"+c1.getRadius()); //c1:(1.0,2.0),2.0 System.out.println("c2:("+c2.getO().getX() +","+c2.getO().getY()+"),"+c2.getRadius());//c2:(0.0,0.0),5.0 System.out.println("c1 area = "+c1.area());//c1 area = 12.56 System.out.println("c1 area = "+c2.area());//c1 area = 78.5 c1.setO(5,6); c2.setRadius(9.0); System.out.println("c1:("+c1.getO().getX()+"," +c1.getO().getY()+"),"+c1.getRadius());//c1:(5.0,6.0),2.0 System.out.println("c2:("+c2.getO().getX()+"," +c2.getO().getY()+"),"+c2.getRadius());//c2:(0.0,0.0),9.0 System.out.println("c1 area = "+c1.area());//c1 area = 12.56 System.out.println("c1 area = "+c2.area());//c1 area = 254.34 Point p1 = new Point(5.2, 6.3); System.out.println(c1.contains(p1));//true System.out.println(c1.contains(new Point(10.0,9.0)));//false } }
?