Cieľom cvičení je pozrieť sa na praktické využitie rozhraní, abstraktných tried a metód a modifikátorov viditeľnosti.
PlochaTvarov
) by mali byť zmenené na abstraktné a prečo.
abstract
:
String
) v poli nie lexikograficky, ale podľa dĺžky reťazca - v prípade reťazcov rovnakej dĺžky rozhoduje lexikografické porovnanie.
Arrays.sort
) vypísali dvojice, ktoré sa porovnávajú.
resetujPocitadlo()
a getPocetPorovnani()
)
Na jednom z predošlých cvičení sme implementovali triedu Bod
uchovávajúcu x-ovú a y-ovú súradnicu bodu.
sk.upjs.BodovyPorovnavac
implementujúcu porovnávanie bodov podľa vzdialenosti od zadaného bodu (b1 < b2
ak bod b1
je k nejakému bodu [x, y]
bližšie ako bod b2
)
sk.upjs.ReverznyBodovyPorovnavac
, ktorá bude implementovať rozhranie Comparator<Bod>
a v rámci konštruktora dostane referenciu na nejaký Comparator<Bod>
. Reverzný porovnávač pri metóde compare
bude vracať opačnú hodnotu, ako by vrátil v konštruktore referencovaný komparátor.