[JAVA] Klasa - Zbiorniki z wodą

anulka2009
Użytkownik
Użytkownik
Posty: 2
Rejestracja: 7 mar 2009, o 12:27
Płeć: Kobieta
Lokalizacja: Rzeszów
Podziękował: 1 raz

[JAVA] Klasa - Zbiorniki z wodą

Post autor: anulka2009 »

Witam ! Jestem początkująca w Javie , chcę napisać taki program:

Którego obiekty będą stanowić zbiorniki wody. Każdy zbiornik ma numer, zadaną pojemność oraz aktualny stan wody (który może być mniejszy od pojemności, gdy zbiornik nie jest pełen). Inicjalnie stan wody w zbiorniku równy jest 0.
W klasie zdefiniować metody dolej(double woda) i odlej(double woda) pozwalające zmieniać stan wody poprzez dolewanie i odlewanie.
Numery są nadawane zbiornikom automatycznie - pierwszy utworzony w programie zbiornik uzyskuje numer 1, drugi - numer 2 itd."


Moje pytanie jest , jak nadawać te numery tym zbiornikom ??

Np. w klasie Main tworzę obiekt:

Kod: Zaznacz cały

Zbiornik z1 = new Zbiornik(200)
i chcę żeby na ekranie mi wyświetlił informację typu:

Kod: Zaznacz cały

 Zbiornik 1 , pojemnosc 200 , stan wody 0
Jak będzie wyglądał konstruktor w tej klasie żeby mi nadał dla obiektów kolejny numer ?

Dziękuję za jakieś wskazówki, niestety ale programistką to ja chyba nie będę
soku11
Użytkownik
Użytkownik
Posty: 6607
Rejestracja: 16 sty 2007, o 19:42
Płeć: Mężczyzna
Podziękował: 119 razy
Pomógł: 1823 razy

[JAVA] Klasa - Zbiorniki z wodą

Post autor: soku11 »

Prosta klasa ze zmienna statyczna

Kod: Zaznacz cały

public class Zbiornik
{
  private static int iloscZbiornikow=1;
  
  private int numer;
  private double pojemnosc;
  private double stan;
  
  
  public Zbiornik(double pojemnosc)
  {
    numer=iloscZbiornikow++;
    this.pojemnosc=pojemnosc;
    stan=0;
    
    System.out.println("Zbiornik nr "+numer+" , pojemnosc "+pojemnosc+" , stan wody "+stan);
  }
  
  public void dolej(double ilosc)
  {
    if((stan+=ilosc)>pojemnosc)
      stan=pojemnosc;
  }
  
  public void odlej(double ilosc)
  {
    if((stan-=ilosc)>0)
      stan=0;    
  }
}
Pozdrawiam.
ODPOWIEDZ