Mám dotaz, určitě se zde najde někdo kdo bere sportovně naše spory a odpoví. Mějme klasickou implementaci vzoru observer, kde událost vyvolávám takto:
private void fireSpadlaHruska() {
for(StromObserver observer : observers) {
handler.spadlaHruska();
}
}
private void fireSpadloJabko() {
for(StromObserver observer : observers) {
handler.spadloJabko();
}
}
}
Tak by mě zajímalo, jestli je kompilátor pro Javu taková šikulka, že se za běhu aplikace nemusí jakoby spouštět zcela prázdná metoda SpadloJabko() u nějakého observera, který na ní nijak nereaguje. Nebo se snad stane za běhu to, že skutečně dojde k sérii příkazů ve snaze spustit metodu, ve které nic není? (např observer Pepa chce vědět jen o pádu jabka a nezajímají ho hrušky. Třeba debugger by si do té metody vlezl.