Skip to main content

Mi a módszer felülbírálása?

A módszer felülbírálását az objektum-orientált programozáshoz használják egy öröklési hierarchián belül, és akkor fordul elő, amikor egy szuperosztályban meghatározott módszert egy alosztályban újradefiniálnak.Általában az alosztály módszer valami mást csinál, mint a szuperosztály módszerét, vagy kibővíti a szuperosztály képességét, de ennek nem kell lennie.A módszer felülbírálása akkor fordul elő, amikor egy szuperosztály -módszert egy alosztályban újradefiniálnak, függetlenül az újradefiniált módszer tartalmától.Az újradefiniált módszer -aláírásoknak pontosan azonosnak kell lenniük.Ezenkívül a B és C osztály lehet az A osztály alosztályai. A B osztály tartalmazhat egy DOSOMECTH nevű módszert, amely nem vesz be bemeneti paramétereket, és a C osztály tartalmazhat olyan módszert, amely egy számot vesz be bemeneti paraméterként.Ebben a példában csak a B osztály bizonyítja a módszert, mivel annak doszometikai módszerének ugyanolyan módszer aláírása van, mint a szuperosztály, az A osztály. A C osztályú doszometikai módszer viszont bemutatja a módszer túlterhelését, mivel egy teljesen új módszert hoz létre..Lehet, hogy a szuperosztályokban a virtuális módszereket megvalósíthatják, vagy nem valósíthatók meg, de ezeknek az alosztály meghatározása a módszer felülbírálásának példánya.Ha egy módszert egy alosztályban felülbírálnak, akkor a szuperosztály módszerét csak akkor hívják meg, ha azt kifejezetten meghívják.A felülbírált módszer meghívásának ez a konkrét módja gyakran azt állítja, hogy elrejti a szuperosztály megvalósítását.Mind a Java, mind a C ++ esetében specifikus kulcsszavak alkalmazhatók a módszer aláírásaiban, hogy megakadályozzák a módszert egy alosztályon történő felülbírálásra.Ehhez a Java a végső kulcsszót használja, a C ++ a const kulcsszót használja.A módszer felülbírálásának megakadályozása előnyös lehet, ha egy adott funkciót mindig változatlannak kell lennie az öröklési fában.Azok az esetek, amelyek általában a leginkább előnyösek a felülbírálásból, akkor az alosztály célja, hogy funkcionalitást adjon a szuperosztály módszeréhez anélkül, hogy egy teljesen új módszert hozzon létre.A szokatlan esetek, amikor egy módszert egy adott típusú objektumra teljesen át kell alakítani, szintén előnyös lehet ez a technika.Ha egy módszert felülbírálnak, fontos, hogy a programozó megfelelő módon kommentálja mind a szuperosztály, mind az alosztály módszereit.Ideális esetben ezeknek a megjegyzéseknek tisztázniuk kell, hogy a módszer egyes változatai, valamint hogyan és miért különböznek egymástól.