Въведение в полиморфизма

Полиморфизмът е концепцията, с помощта на която могат да се извършват единични действия по различни начини. Той произлиза от две гръцки думи, тоест поли и морфи. „Поли“ означава много, а „морфи“ означава форми. Отсега нататък полиморфизмът предполага много форми. В обектно-ориентираното програмиране може да се дефинира като способност на езика на програмиране да обработва обекти по различен начин в зависимост от техния клас или техния тип данни. По принцип можем да го определим като способността на производни класове да предефинират методите.

разбиране

Двата типа полиморфизъм са полиморфизъм във време на компилация и полиморфизъм във времето. Полиморфизмът по време на компилиране се осъществява чрез метод на претоварване и полиморфизъм по време на изпълнение по метода на пренасочване. Полиморфизмът по време на изпълнение, наречен също така Динамичен метод на изпращане, е процес, при който призивът към презаписан метод е решен по време на изпълнение, въпреки по време на компилиране. Тук изменяният метод се извиква чрез референтна променлива на родителски клас. Освен това полиморфизмът по време на изпълнение не може да бъде постигнат от членовете на данните.

Как полиморфизмът прави работата толкова лесна?

Това е обектно-ориентирана програмна характеристика. Използвайки Polymorphism, клас може да проявява различни функционалности, дори когато те имат общ интерфейс. Така можем да кажем, че този дългосрочен план обяснява основно понятие. Забележителното при полиморфизма е, че целият работен код в различни класове не изисква да знае за класа, който се използва от него, тъй като там начинът на използване е един и същ.

Това е обектно-ориентирана програмна характеристика. Използвайки Polymorphism, клас може да проявява различни функционалности, дори когато те имат общ интерфейс. Така можем да кажем, че този дългосрочен план обяснява много основно понятие. Забележителното при полиморфизма е, че целият работен код в различни класове не изисква да знае за класа, който се използва от него, тъй като там начинът на използване е един и същ.

Помислете за сценарий в реалния свят за полиморфизма. Вземете пример за бутон. Ние знаем, че чрез прилагане на някакво налягане можем да кликнем върху бутона, но не знаем резултата от натискането на бутона или референцията за неговото използване. Тук трябва да отбележим, че и в двата случая резултатът не би повлиял на начина, по който се използва.

Така че основната цел на полиморфизма е да направи обекти, които са взаимозаменяеми в зависимост от нуждите.

Какво можете да направите с полиморфизма?

Когато детският клас има същия метод като този, деклариран в родителския клас, ние го наричаме метод, който отменя.

Или с други думи, ако детски клас осигурява реализацията на метода, деклариран от неговия родителски клас, той се нарича метод overriding. Някои неща, които трябва да запомните при преодоляването на метода, са:

  • Методът трябва да има същото име като посочения в родителския клас
  • Методът също трябва да има същия параметър като този, споменат в родителския клас.
  • Трябва да има наследството, тоест отношенията IS-A.

Работа с полиморфизъм?

Когато даден клас има множество методи, които имат едно и също име, но различни параметри, той се означава като метод Overloading.

Да предположим, че трябва да извършим само една операция, а след това да имаме същото име като методите, ще увеличим четивността на програмата. Начини за претоварване на метода в Java е:

  • Промяна на броя на аргументите
  • Промяна на типа данни

В Java обаче не е възможно, ако променим само типа връщане на метода.

Предимства

  • Полиморфизмът помага на програмистите да използват повторно кода, а също и класовете, които са написани веднъж, за да бъдат тествани и реализирани. (Използване на код)
  • Името на една променлива може да съхранява променливи от няколко типа данни (int, float, double, long и т.н.).
  • Увеличава четимостта на програмата.

Защо трябва да използваме полиморфизъм?

Освен динамичен полиморфизъм и статичен полиморфизъм, има някои програмни характеристики на Java, проявяващи полиморфизъм, различен от двата основни типа.

Това са - принуда, полиморфни параметри и претоварване на оператора

принуда

Нека разберем принудата с много прост пример. Помислете за низ със стойност „принудителен клас:“. Помислете за друго цяло число със стойност 1. Сега, какво се случва, когато стегнете низ на стойност с цяло число? Резултатът от това свързване би бил „клас на принуда: 1“. Това се нарича принуда. Преобразуването на неявен тип се прави, за да се предотвратят грешки в типа. Прави се от съставителя.

Претоварване на оператора

Преди да започнем с претоварването на оператора, известен още като метод на претоварване, нека да разгледаме един пример. Помислете низ със стойност „Оператор“ и друг низ като „Претоварване“. Използвайте символа плюс (+) с тези два низа, точно както добавите две цели числа. (+) Ще свърже тези два низа. В случай на две цели числа се връща сумата от две цели числа. Когато един символ или оператор има способността да променя значението си в зависимост от начина, по който се използва, изложеният вид полиморфизъм се нарича Операторско претоварване.

Параметри

При полиморфизма един обект може да се появи под много форми. В Java се отнася до разрешаване на достъп до обект по един от следните начини като -

1. използвайки референтната променлива на своя родителски клас или суперклас

2. използвайки референтната променлива на класа, в който съществува.

Защо се нуждаем от полиморфизъм?

Основната причина, поради която е необходим полиморфизмът, е, че тази концепция се използва широко при прилагането на наследството. Той играе важна роля, като позволява на обектите да имат разнообразни вътрешни структури при споделяне на един и същ външен интерфейс. Полиморфизмът е заявен ясно като този, който е картографиран за много.

Обхват

Binding е свързване на извикване на метод към тялото на метода. Имаме два вида свързване.

Статично подвързване (ранно свързване): Когато типът обект се определя по време на компилиране.

Динамично обвързване (Късно обвързване): Когато типът обект се определя по време на изпълнение.

заключение

Полиморфизмът се счита за една от много важните характеристики на обектно-ориентираното програмиране. Ако говорите за пример от реалния живот на полиморфизма, това може да бъде човек в същото време може да има различни характеристики, например, мъжът в същото време е син, съпруг, служител. Така един и същ човек придобива различно поведение в различни ситуации. Това, обектно-ориентирано, се нарича полиморфизъм, важна характеристика на обектно-ориентираното програмиране.

Препоръчителни статии

Това е ръководство за Какво е полиморфизъм ?. Тук обсъдихме работата, обхвата, необходимостта и предимствата на полиморфизма. Можете да разгледате и другите ни предложени статии, за да научите повече -

  1. Какво е JavaScript?
  2. Какво е HTML
  3. Какво е Python
  4. Полиморфизъм в C #
  5. Масиви в Java програмиране
  6. Преобразуване на типове в Java с типове и примери
  7. Ръководство за преобразуване в Java с примери
  8. Статично свързване и динамично свързване | Въведение | употреби