Polimorfizm w Javie

Spisie treści
W programowaniu obiektowym istnieją 3 podstawowe filary, dziedzictwo, który pozwala nam uzyskać atrybuty i metody klasy nadrzędnej, the kapsułkowanie to pozwala nam zachować metody i atrybuty klasy i nie powinno być widziane poza nią, a trzeci to jest wielopostaciowość.
WielopostaciowośćSłowo wielopostaciowość pochodzi od greckiego słowa i oznacza, że ​​ma wiele form, zatem możemy zdefiniować, że polimorfizm to umiejętność używania wielu form w Jawa.
Aby zrozumieć, co wielopostaciowość Musimy zrozumieć kluczowe pojęcia, jednym z nich są typy, typ to definicja, która jest generowana z klasy, więc prowadzi to do dwóch dodatkowych powiązanych pojęć.
PodtypKiedy tworzymy klasę, która dziedziczy po innej, tworzymy a podtyp, ponieważ jest to typ wywodzący się z typu nadrzędnego, możemy na przykład powiedzieć, że jeśli mamy klasę Figura geometryczna i z tego tworzymy klasę Koło który ją dziedziczy, to nasza klasa Circle definiuje podtyp GeometricFigure.
SupertypJest odwrotnie, gdy klasa jest dziedziczona, staje się klasą nadrzędną lub klasą nadrzędną, dlatego teraz okazuje się być klasą supertyp, czyli typ podstawowy lub który pomaga zdefiniować jego podtypy, jeśli pójdziemy za przykładem, który już zdefiniowaliśmy, nadtypem będzie klasa Figura geometryczna.
W ten sposób definiujemy pojęcia, które pomogą nam zrozumieć polimorfizm, jeśli przykład nieco obszerniejszy, możemy powiedzieć, że Koło zawsze będzie tego typu Figura geometryczna, ale nie wszystkie typy Figura geometryczna będą tego typu Koło, jeśli mówimy o klasach, które właśnie zdefiniowaliśmy, na przykład jeśli teraz tworzymy podklasę, która dziedziczy po klasie Figura geometryczna i to się nazywa Prostokąt, teraz mamy nowy podtyp, który nadal jest tego typu Figura geometryczna ale przybiera nową formę i oto polimorfizm.
Ponieważ poznaliśmy teorię typów, możemy wtedy powiedzieć, że podklasa będzie zawsze typu swojej klasy nadrzędnej, ale klasa nadrzędna nie będzie typu swojej podklasy lub klasy potomnej, dzięki temu możemy zobacz poniższy przykład, gdzie w metodzie pytamy o obiekt typu Figura geometrycznaW związku z tym możemy otrzymać jego wiele kształtów, w tym przypadku możemy otrzymać obiekt Circle lub Rectangle, ponieważ oba, mimo że są różne, dzielą nadtyp.
Zobaczmy na poniższym obrazku kod, który pokazuje nam, jak zachowywałaby się metoda z wielopostaciowość:

W tym przykładzie metoda show object oczekuje obiektu typu Figura geometryczna, jeśli wiemy, że Circle i Rectangle są podklasami FigureGeometric, możemy przekazać ich obiekty do metody, ponieważ są one różnymi formami FigureGeometric i spełniają funkcję.
Nauczyliśmy się już wykorzystywać trzeci filar orientacji obiektowej, teraz możemy budować bardziej rozbudowane metody, które można ponownie wykorzystać w różnych implementacjach naszych programów w Jawa.Podobał Ci się i pomógł ten samouczek?Możesz nagrodzić autora, naciskając ten przycisk, aby dać mu pozytywny punkt

Będziesz pomóc w rozwoju serwisu, dzieląc stronę ze swoimi znajomymi

wave wave wave wave wave