Obiekty i klasy 2
 

Zadanie 28 (1p)

Dodefiniować następujące konstrukcje do klasy Circle z zadania 27 i przetestować:
    Pole  statyczne:             static int nr - ilość tworzonych kół do chwili obecnej
    Metoda statyczna:        static int dajNr() - zwraca liczbę tworzonych kół do chwili obecnej

Zadanie 29 (3p)

Zaprojektować i testować klasę Counter reprezentującą liczniki:

    Pole: private int state - stan licznika
    Konstruktor: public Counter() - ustaw początkowy stan = 0
    Metody: public int state() - zwróć aktualny stan licznika
                  public Counter inc() - zwiększ o 1 i zwraca  licznik
                  public Counter dec() - zmniejsz o 1 i zwraca licznik
                  public void reset() - zeruj licznik

Zadanie 30 (1p)

Rozbudować klasę Counter z zadania 29 o dodatkowe pole: private static int op - rejestruje ilość operacji wyk. na obiektach klasy Counter do chwili obecnej.


Zadanie 31
(5p)

Zaprojektować i testować klasę Complex reprezentującą liczby zespolone:

    Pola:                    private double  im, re - część rzeczywista i zesplona
    Konstruktory:     public Complex() - konstruuje liczbę zespoloną: 0 + i*0
                                public  Complex(double re, double im) - konstruuje liczbę zespoloną: re + i*im
                                public  Complex(double re) - konstruuje liczbę zespoloną: re + i*0
                                public Complex(Complex c) - konstruktor "kopiujący", tworzy identyczną kopię c
    Metody:          public double getRe() - zwraca re
                            public double getIm() - zwraca im
                            public String toString() - wypisuje komunikat o liczbie zespolonej
                            public Complex multiply1(double a) - mnoży przez liczbę rzeczywistą a
                            public Complex multiply2(Complex c) - mnoży przez liczbę zespoloną c
                            public Complex divide(double a) - dzieli przez liczbę rzeczywistą a