Wpis z mikrobloga

#programowanie #java Jest jakieś łopatologiczne wytłumaczenie zastosowania super() w klasie nie dziedziczącej po żadnej innej (pomijając Object)? Przykład z Oracle : program Convert jest tam plik Unit.java z fragmentem: `public class Unit {

String description;

double multiplier;

Unit(String description, double multiplier) {

super();

this.description = description;

this.multiplier = multiplier;

}`
  • 10
@Wozyack: no ja rozumiem na klasie dziedziczącej... ale w taki sposób pierwszy raz się spotkałem. Tylko za poważne źródło to stosuje, więc co poza dodatkową linią kodu nam to da? +1lvl do programowania?
No też tak mi się wydaje. Nigdzie nie znalazłem materiałów tłumaczących to posunięcie. Jedynie co przychodzi na myśl to może to się przydać na teście certyfikacyjnym Oracle'a jako kolejne z kluczowych pytań potwierdzających umiejętność programowania (czyt. kompilatorowania) ;)
@kazoo: Jeśli wywołuje konstruktor bezparametrowy, to jest to wywołanie zbędne nawet w przypadku, gdy dziedziczysz po jakiejś konkretnej klasie. W przypadku braku takiego wywołania i tak zostanie dodane przy kompilacji i wpisywanie super() jest zgłaszane przez narzędzia analizy kodu jako zbędna instrukcja.