Bevezetés a Java polimorfizmusába

A polimorfizmust olyan fogalomként definiálják, amely egy művelet segítségével számos módon elvégezhető. A szó a 2 görög szavakból származik, amelyek mind poli, mind morfikák. Itt, amint talán tudod, a „poly” sokra utal, a „morphs” sok formát jelent. Ezért a polimorfizmus szó sok formát ölel fel. Most értsük meg részletesen a java polimorfizmusát.

Hogyan működik a polimorfizmus Java-ban?

A polimorfizmus egy OOO programozási jellemző. Bármikor használjuk, az osztály sok funkcióval rendelkezik, még akkor is, ha a közös felületet mutatják. Ezért feltételezhetjük, hogy a hosszú szó valójában egy nagyon egyszerű fogalmat mond.

A polimorfizmus kapcsán érdemes megjegyezni, hogy a számos osztályban létező teljes működési kódnak valójában nem kell megértenie azt az osztályt, amelyhez hasonló módon használják.

Tegyük fel a polimorfizmus valós példáját. Tegyük fel a gombot. Mindannyian tudják, hogy ha kicsit nyomást gyakorolunk, akkor meg tudjuk nyomni a gombot, ám nem tudjuk, hogy mi lesz-e a nyomás a gombra, és a használat célja. Tehát, rámutat arra, hogy itt vigyázni kell, akárhogy is, az eredmény nem befolyásolja a használt eljárást.

Tehát a polimorfizmus alapvető célja, hogy tárgyakat készítsen, amelyek igényeik szerint cserélhetők.

A polimorfizmus típusai a Java-ban

A polimorfizmus két típusa a fordítási idő polimorfizmus és a futási idő polimorfizmus. A compile-time polimorfizmus módszerrel történő túlterheléssel és a runtime polimorfizmus módszer felülírásával történik.

A futásidejű polimorfizmus, más néven Dynamic Method Dispatch egy olyan folyamat, amelyben a felülbírált módszerre való hívás futási időben oldódik meg, annak ellenére, hogy fordításkor. Ebben a felülbírált módszert egy szülőosztály referenciaváltozóján keresztül hívjuk meg. Ezenkívül az adattagok nem tudják elérni a futásidejű polimorfizmust.

A polimorfizmus fontossága Java-ban

Ha elvetjük a dinamikus polimorfizmust és a statikus polimorfizmust, akkor a programozásban létezik a Java néhány olyan programozási jellemzője, amely a két fontos típustól eltérő polimorfizmust mutat.

Ezek ezek - kényszer, operátor túlterhelés és polimorf paraméterek.

Kényszerítés

Próbáljuk megszerezni a kényszer jelentését ezen a példán keresztül. Tegyük fel, hogy létezik a karakterlánc értéke együttes értékként: Tegyük fel a második számot, amelynek 2. értéke van. Most mi történne, ha ezt a karakterláncot ezzel a számmal összeveti? Ennek az összekapcsolásnak az eredménye „együttes érték: 2” lesz. Ezt kényszernek hívják. Ez egy implicit típusú konverzió, amelyet a hibák megelőzése érdekében hajtunk végre.

Üzemeltető túlterhelése

Mivel a kezelő túlterhelésének fogalmával kezdjük, hadd vessek egy pillantást egy forgatókönyvre. Tegyük fel, hogy van egy karakterlánc, amelynek értéke „Működés”, és a második, amelynek értéke „Túlterhelés”. Akkor plusz szimbólumot (+) használunk ugyanúgy, mint 2 szám hozzáadását. Ez (+) összefonódik. Ha két egész számot veszünk figyelembe, akkor a két szám hozzáadása visszatér. Ha egy szimbólum vagy operátor meg tudja változtatni az értelmezést, figyelembe véve az alkalmazott eljárást, a végrehajtott polimorfizmus típusát operátor túlterhelésnek nevezik.

Polimorf paraméterek

Ez azt jelenti, hogy bármilyen objektumhoz való hozzáférést az alábbiak szerint adhatjuk meg -

  1. Bármelyik szülőosztályhoz tartozó referenciaváltozó használata.
  2. Az osztályhoz tartozó referenciaváltozó használata, ahol létezik.

Polimorfizmus hatálya

A kötés azt jelenti, hogy egy metódushívást összekapcsolunk egy metódussal. Kétféle kötés létezik:

  • Az 1. sz . Statikus kötés, ami azt jelenti, hogy az objektum típusát a fordítási idő alatt meghatározták.
  • A második a dinamikus kötés, ami azt jelenti, hogy az objektum típusát futási idő alatt meghatározták.

Az egyetlen oka annak, hogy miért szükséges a polimorfizmus, mivel annak fogalma rendkívül szükséges az öröklés végrehajtása során. Ezenkívül nagyon fontos szerepet játszik, amely lehetővé teszi az objektumok számára, hogy számos struktúrát örököljenek az interfész megosztása során. A polimorfizmust egyértelműen megemlítik, mivel csak sokat jelképezik meg.

Példák a Java polimorfizmusára

Az alábbiakban bemutatjuk a Java polimorfizmusának különféle példáit:

1. példa - Java program a módszer túlterhelésének bemutatására

Kód:

class methodOverload (
static int multi(int x, int y)
(
return x * y;
)
// Method with the same name but with 2 double arguments
static double multi(double x, double y)
(
return x * y;
)
)
class Main (
public static void main(String() args)
(
System.out.println(methodOverload.multi(6, 2));
System.out.println(methodOverload.multi(1.2, 1.2));
)
)

Kimenet:

2. példa - Java program az operátorok túlterhelésének bemutatására

Kód:

class operator (
void oper(String s, String s2)
(
String s = s + s2;
System.out.println("Concatenated String is"
+ s);
)
void oper(int a, int b)
(
int c = a + b;
System.out.println("Sum is : " + c);
)
)
class Main (
public static void main(String() args)
(
operator o = new operator();
o.oper(1, 2);
o.oper("hi", "bye");
)
)

Kimenet:

3. példa - Java program a módszer túlterheléséhez

Kód:

class Multi (
// Method with 2 parameter
static int Multi(int a, int b)
(
return a * b;
)
static int Multi(int a, int b, int c)
(
return a * b * c;
)
)
class Main (
public static void main(String() args)
(
System.out.println(Multi.Multi(2, 3));
System.out.println(Multi.Multi(2, 3, 3));
)
)

Kimenet:

Következtetés

A polimorfizmus szükségességének egyetlen oka az, hogy fogalmának rendkívül nagy szükség van az öröklés végrehajtásában. Ezenkívül nagyon fontos szerepet játszik, amely lehetővé teszi az objektumok számára, hogy számos struktúrát örököljenek az interfész megosztása során. A polimorfizmust egyértelműen megemlítik, mivel csak sokat jelképezik meg.

Ajánlott cikkek

Ez egy útmutató a Java polimorfizmusához. Itt tárgyaljuk a Java polimorfizmusának működését annak típusaival és fontosságával, különféle példákkal és a kód megvalósításával együtt. A következő cikkeket is megnézheti további információkért -

  1. Polimorfizmus a C # -ben
  2. JTextField Java
  3. Túlterhelés és felülbírálás a C ++-ban
  4. Mi a Java öröklés?
  5. Túlterhelés a Java-ban
  6. Python túlterhelés
  7. Teljes útmutató az öröklésről a Pythonban
  8. Típusok és kezelési hibák a JavaScript-ben
  9. A statikus kötés és a dinamikus kötés előnyei

Kategória: