Wpis z mikrobloga

@farmaceut:

Paczaj:

Horse.java

public class Horse {
String name;
[...]

protected void setName(String name) {
this.name = name;
}

[...]
}

——

RacingHorse.java

public class RacingHorse extends Horse {
[...]
}

——

TestHorse.java

public class TestHorse {
public static void main(String[] args) {
RacingHorse horse = new RacingHorse();
horse.setName(„Mirek”);
}
}

@farmaceut: ale ty nie używasz metody klasy rodzica ( w sensie nie masz metody w RacingHorse ktora wywoluje metode z Horse ), tylko wywolujesz metodę z scope'a poza obiektem, czyli metody publiczne. setName nie jest publiczne.
@farmaceut: Dobra, to wyjaśnię Ci żeby bylo Ci prościej później

Metody private można wołać tylko w scopie dokładnie tej klasy - czyli, metody private w Horse mogą być wołane tylko przez inne metody klasy Horse.

Metody protected mogą być wołane w scopie tej klasy i ich dzieci - czyli, metode protected w klasie Horsę można zawołać z klasy Horse, RacingHorse i każdej innej klasy ktora dziedziczy po Horse

No i metody