Dziedziczenie - metody statyczne

0

Mam dwie klasy Samochód i wyścig.

  1. Stwórz metodę w klasie wyścig która pozwala na dodanie zawodników (samochodów)
  2. Stwórz metodę w klasie wyścig która wypisze wszystkich zawodników
  3. Stwórz metodę w klasie wyścig która wypisze wszystkich zawodników
  4. Stwórz metodę w klasie wyścig która wyłoni najlepszego zawodnika pod względem rozpędu do setki.
    Pomoże ktoś ? Nie wiem do końca jak ma wyglądać metoda statyczna :/

KLASA SAMOCHOD333

public class Samochod333 {

    public String marka;
    public String model;
    private int moc;
    private double czasRozpeduSamochodu;

    public Samochod333(String marka, String model, int moc, double czasDoSetki) {
            this.marka = marka;
            this.model = model;
            this.moc = moc;
            this.czasRozpeduSamochodu = czasDoSetki;
        }

    public String getMarka() {
            return marka;
        }

    public void setMarka(String marka) {
            this.marka = marka;
        }

    public String getModel() {
            return model;
        }

    public void setModel(String model) {
            this.model = model;
        }

    public int getMoc() {
            return moc;
        }

    public void setMoc(int moc) {
            this.moc = moc;
        }

    public double getczasRozpeduSamochodu() {
            return czasRozpeduSamochodu;
        }

    public void setCzasRozpeduSamochodu(double czasRozpeduSamochodu) {
            this.czasRozpeduSamochodu = czasRozpeduSamochodu;
        }

        @Override
    public String toString(){
        return marka + model + moc + czasRozpeduSamochodu;
        }
}

KLASA RACE

public class Race{
}
2

Nie rozumie co chcesz zrobić.

  1. W Javie dziedziczenie nie działa dla metod statycznych
  2. Co chcesz napisać w tej metodzie statycznej?
0

Wyścig to byt. Co za tym idzie musi mieć instancje. OOP bardzo często (nie zawsze) reprezentuje otaczający nas świat. Zobacz ze jak mówisz o wyścigu to zawsze mówisz o czymś co się wydarzyło / wydarzy więc jest to jakiś byt.

Metoda statyczna pasuje tam gdzie potrzebujesz utworzyć dany byt (np singleton). Więc tutaj Ci się nie sprawdzi bo musisz "Dodać do wyścigu" czyli zrobić coś na czymś.

1

@Patryk Gnat:

Żadne z zagadnień jakie przywołujesz nie wymaga metody statycznej.

PS. Dziedziczenia też nie wymaga.
Coś mi pachnie "ładnie inaczej" w/s dziedziczenia .. czyżbyś chciał dziedziczyć Wyścig po Samochodzie, najgłupszy schemat kiepskich kursów ?

2

a jak może wyglądać metoda statyczna w Javie?

chyba tak:

public class Main {
    static public void main(String[] args) {
        Samochod333 sam = new Samochod333();
}
}

innej opcji nie widzę :P

2

Ale przecież w poleceniu nie ma nic o żadnej metodzie statycznej o_O

0

Od samego patrzenia widze ERROR, jesli zrobisz punkt drugi i 3 to wyjdzie blad bo powtarzaja sie te same metody. aha no i poco piszesz

getCzasDostepu

powinno byc

weźCzasDostępu
1

Autor jest zablokowany, nie wiem po co tu jeszcze piszecie.

0
vpiotr napisał(a):

Autor jest zablokowany, nie wiem po co tu jeszcze piszecie.

około od 2h więc jak był pisany ostatni post to możliwe że jeszcze Op tu był :P

1 użytkowników online, w tym zalogowanych: 0, gości: 1