public class PlaneCircle extends Circle {
  // Ta klasa automatycznie dziedziczy pola i metody klasy Circle,
  // więc wystarczy tylko wpisać to, co jest nowe.
  // nowe pola egzemplarza do przechowywania współrzędnych środka koła
  private final double cx, cy;

  // nowy konstruktor inicjujący nowe pola
  // W konstruktorze tym wywołano konstruktor Circle() za pomocą specjalnej składni.
  public PlaneCircle(double r, double x, double y) {
    super(r);     // wywołuje konstruktor nadklasy Circle()
    this.cx = x;  // inicjuje pole egzemplarzowe cx
    this.cy = y;  // inicjuje pole egzemplarzowe cy
  }

  public double getCentreX() {
    return cx;
  }

  public double getCentreY() {
    return cy;
  }

  // Metody area() i circumference() są odziedziczone po klasie Circle.
  // nowa metoda egzemplarzowa sprawdzająca, czy punkt znajduje się w kole
  // zwróć uwagę na użycie odziedziczonego pola egzemplarzowego r
  public boolean isInside(double x, double y) {
    double dx = x - cx, dy = y - cy;             // odległość od środka
    double distance = Math.sqrt(dx*dx + dy*dy);  // twierdzenie Pitagorasa
    return (distance < r);                       // zwraca true lub false
  }
}
