#5 java
- vyuziti samozrejme takova konstrukce ma, napr. pokud budou existovat tridy trojuhelnik a obdelnik, ktere budou dedit z tridy GeometricObject pak tato metoda bude fungovat i pro ne
- takovato metoda nedava moc smysl ve statickem kontextu, ocekaval bych ji spise primo na tride GeometricObject, s tim ze by pak mela jeden parametr (referenci na jiny GeometricObject) a porovnaval by jsi to s objektem nad kterym to zavolas, v takovem pripade by ta genericka cast byla i zbytecna, protoze veskere tridy, ktere pak z GeometricObject podedi budou tuto metodu mit
- equals jak ti napsal Kit neprepisuj, z toho kodu co jsi napsal to vypada ze porovnavas obsahy nejakych geometrickych objektu, kdezto metoda equals by mela zjistit jestli jsou objekty stejne, jinymi slovy muzes mit trojuhelnik a obdelnik se stejnym obsahem ale objekty jako takove stejne rozhodne nejsou (lisi se v jinych atributech)
- return obj1.getArea() == obj2.getArea(); - nevim jaky datovy typ vraci getArea(), ale pokud je to cokoliv jineho nez primitivni datovy typ (tedy int, char apod.), tak to nebude fungovat spatne, protoze operator == nad objekty neporovnava obsah objektu ale reference na objekt, tedy zjistuje jestli je to ten samy objekt v pameti, coz nejspise neni to co chces v tomto pripade. Pokud getArea() vraci objekt, pouzij metodu equals.