Labels

Android (1) bash (2) boost (2) C (34) C++ (2) cheatsheet (2) CLion (6) css (3) Debian (33) DL (17) Docker (1) Dreamweaver (2) Eclipse (3) fail2ban (4) git (5) GitHub (4) Hacking (3) html (8) http (1) iOS (1) iPad (1) IRC (1) Java (30) javascript (3) Linux (164) Mac (19) Machine Learning (1) mySQL (47) Netbeans (4) Networking (1) Nexus (1) OpenVMS (6) Oracle (1) Pandas (3) php (16) Postgresql (8) Python (9) raid (1) RedHat (14) Samba (2) Slackware (45) SQL (14) svn (1) tar (1) ThinkPad (1) Virtualbox (3) Visual Basic (1) Visual Studio (1) Windows (2)

Monday 27 February 2017

Polymorphism

Polymorphism

When methods understand the same message but it means different things, so, if we have two classes and both classes have a method called toString()

Each classes toString() will do something slightly different.

When methods are overridden we can say that they are Polymorphic


An analogy for polymorphism...

Imagine that all the staff in a company have gone to a general staff
meeting. At the end of the meeting, the speaker says: ‘Thank you
everyone for coming. Now I’ll let you get back to whatever you have to
do next.’

The members of the audience will all understand this and they will each
know what to do next. Customer Services staff will go back to dealing
with customers, Accounts staff will resume keeping track of accounts,
Deliveries staff will continue where they left off arranging deliveries, and
so on.
Everyone will understand the same instruction, but they will behave
differently
, according to which department they come from. The speaker
does not have to ask each person where they work and then tell them
what to do; the speaker does not need to know how to do the jobs, or
even what the various jobs are. Each member of the audience will know
for themselves what to do, without being told.

No comments:

Post a Comment

Note: only a member of this blog may post a comment.