በፖሊሞርፊዝም እና በውርስ መካከል ያለው ልዩነት በኦኦፒ

ዝርዝር ሁኔታ:

በፖሊሞርፊዝም እና በውርስ መካከል ያለው ልዩነት በኦኦፒ
በፖሊሞርፊዝም እና በውርስ መካከል ያለው ልዩነት በኦኦፒ

ቪዲዮ: በፖሊሞርፊዝም እና በውርስ መካከል ያለው ልዩነት በኦኦፒ

ቪዲዮ: በፖሊሞርፊዝም እና በውርስ መካከል ያለው ልዩነት በኦኦፒ
ቪዲዮ: Меркурий в Ретрограде! aleksey_mercedes 2024, ሰኔ
Anonim

ቁልፍ ልዩነት - ፖሊሞፈርዝም vs ውርስ በOOP

Object-Oriented Programming (OOP) በተለምዶ ሶፍትዌሮችን ለማምረት ይጠቅማል። ብዙ የፕሮግራም አወጣጥ ቋንቋዎች ነገር-ተኮር ፕሮግራሞችን ይደግፋሉ። ነገር-ተኮር ፕሮግራሚንግ ክፍሎችን እና ነገሮችን በመጠቀም ፕሮግራምን ለመንደፍ የሚያስችል ዘዴ ነው። በOOP ውስጥ ያለ ክፍል አንድን ነገር ለመፍጠር ንድፍ ነው። አንድ ክፍል ባህሪያት እና ዘዴዎች አሉት. ዕቃ የአንድ ክፍል ምሳሌ ነው። OOP እንደ ውርስ፣ ፖሊሞርፊዝም፣ አብስትራክሽን እና ኢንካፕስሌሽን ያሉ አራት ምሰሶዎችን ይዟል። ይህ መጣጥፍ በOOP ውስጥ በፖሊሞርፊዝም እና ውርስ መካከል ያለውን ልዩነት ያብራራል። በፖሊሞርፊዝም እና በ OOP መካከል ያለው ቁልፍ ልዩነት ፖሊሞርፊዝም የአንድ ነገር ባህሪ በተለያዩ መንገዶች የመፈፀም ችሎታ ሲሆን ውርስ ደግሞ የነባር ክፍል ባህሪያትን እና ዘዴዎችን በመጠቀም አዲስ ክፍል መፍጠር ነው።

Polymorphism በOOP ውስጥ ምንድነው?

Polymorphism ብዙ ቅርጾችን ለማመልከት ነው። አንድ ነገር ብዙ ባህሪ ሊኖረው ይችላል። ፖሊሞርፊዝም በሁለት ምድቦች ሊከፈል ይችላል. ከመጠን በላይ እየጫኑ እና እየተሻሩ ናቸው።

ከመጠን በላይ በመጫን ላይ

ከታች ያለውን በጃቫ የተፃፈውን ፕሮግራም ይመልከቱ።

በኦኦፒ ውስጥ በፖሊሞርፊዝም እና በውርስ መካከል ያለው ልዩነት
በኦኦፒ ውስጥ በፖሊሞርፊዝም እና በውርስ መካከል ያለው ልዩነት

ምስል 01፡ ከመጠን በላይ መጫን

ከላይ ባለው ፕሮግራም መሰረት የ A አይነት ነገር ይፈጠራል። obj.sum () ሲደውሉ; ከስልት ድምር() ጋር የተያያዘውን ውጤት ይሰጣል። obj.sum (2, 3) ሲደውሉ; ድምር (int a, int b) ጋር የተያያዘውን ውጤት ይሰጣል. ተመሳሳይ ነገር እንደ ሁኔታው የተለያየ ባህሪ እንዳለው መገንዘብ ይቻላል. ተመሳሳይ ስም ያላቸው ብዙ ዘዴዎች ሲኖሩ, ነገር ግን የተለያዩ መለኪያዎች, ከመጠን በላይ መጫን በመባል ይታወቃል.እንዲሁም የማይንቀሳቀስ ማሰሪያ ወይም የሰዓት ፖሊሞርፊዝም በመባልም ይታወቃል።

መሻር

ሌላኛው የፖሊሞርፊዝም አይነት በጣም የተሻረ ነው። በጃቫ የተጻፈውን ከታች ያለውን ፕሮግራም ይመልከቱ።

በPolymorphism እና በውርስ መካከል ያለው ልዩነት በOOP_ስእል 02
በPolymorphism እና በውርስ መካከል ያለው ልዩነት በOOP_ስእል 02

ስእል 02፡ መሻር

ከላይ ባለው ፕሮግራም መሰረት በክፍል A ውስጥ የማሳያ ዘዴ () አለ። ክፍል B ከክፍል A ይዘልቃል።ስለዚህ በክፍል A ውስጥ ያሉት ሁሉም ዘዴዎች በክፍል B ተደራሽ ናቸው። ውርስ ነው። የውርስ ጽንሰ-ሐሳብ በኋላ ላይ ይገለጻል።

ክፍል B እንዲሁ ተመሳሳይ ዘዴ ማሳያ() አላቸው። የ A ዓይነት ነገር ሲፈጥሩ እና የማሳያ ዘዴን ሲጠሩ ውጤቱ ለ B ይሰጣል. ክፍል A የማሳያ ዘዴ በክፍል B የማሳያ ዘዴ ተሽሯል። ስለዚህ ውጤቱ B. ነው

ተመሳሳይ ስም እና ተመሳሳይ መመዘኛ ዘዴዎች ሲኖሩ ነገር ግን በሁለት የተለያዩ ክፍሎች ውስጥ እና ከውርስ ጋር ሲገናኙ መሻር በመባል ይታወቃል።እንዲሁም Late binding፣ Dynamic Binding፣ Runtime Polymorphism በመባልም ይታወቃል። ከመጠን በላይ መጫን እና መሻር እንደ ፖሊሞርፊዝም ይባላሉ. በነገር ተኮር ፕሮግራሚንግ ውስጥ ዋና ፅንሰ-ሀሳብ ነው።

ውርስ በOOP ውስጥ ምንድነው?

ከታች ያለውን በጃቫ የተፃፈውን ፕሮግራም ይመልከቱ።

በፖሊሞርፊዝም እና በ OOP መካከል ባለው ውርስ መካከል ያለው ቁልፍ ልዩነት
በፖሊሞርፊዝም እና በ OOP መካከል ባለው ውርስ መካከል ያለው ቁልፍ ልዩነት

ስእል 03፡ የውርስ ምሳሌ

ከላይ ባለው ፕሮግራም መሰረት ክፍል ሀ ዘዴ ድምር() ያለው ሲሆን ክፍል B ደግሞ ዘዴ ንዑስ() አለው።

የክፍል A ድምር() ዘዴ በክፍል B ውስጥ የማራዘም ቁልፍ ቃል መጠቀም ይቻላል። አዲስ ክፍል ለመፍጠር አሁን ባለው ክፍል ውስጥ ያሉትን ንብረቶች እና ዘዴዎች እንደገና መጠቀም ውርስ በመባል ይታወቃል። በክፍል B ውስጥ ምንም ድምር () ዘዴ የለም; ከክፍል A የተወረሰ ነው. ውርስ ለኮድ መልሶ ጥቅም ላይ ሊውል ይችላል. አሮጌው ክፍል ቤዝ መደብ፣ ሱፐር መደብ ወይም የወላጅ ክፍል ይባላል።የተገኘው ክፍል ንዑስ ክፍል ወይም የልጅ ክፍል ይባላል።

የውርስ አይነቶች

የተለያዩ የውርስ ዓይነቶች አሉ። እነሱም ነጠላ-ደረጃ ውርስ፣ ባለብዙ ደረጃ ውርስ፣ ብዙ ውርስ፣ ተዋረዳዊ ውርስ እና ድብልቅ ውርስ ናቸው።

ነጠላ ውርስ

በነጠላ ውርስ ውስጥ አንድ ሱፐር መደብ እና አንድ ንዑስ ክፍል አለ። ክፍል A ሱፐር ክፍል እና ክፍል B ንዑስ ክፍል ከሆነ, ክፍል A ሁሉም ንብረቶች እና ዘዴዎች ክፍል B ተደራሽ ናቸው አንድ ደረጃ ብቻ ነው; ስለዚህ፣ እንደ ነጠላ-ደረጃ ውርስ ይባላል።

ባለብዙ ደረጃ ውርስ

በባለብዙ ደረጃ ውርስ ውስጥ ሶስት የክፍል ደረጃዎች አሉ። መካከለኛው ክፍል ከሱፐር መደብ ይወርሳል። ንዑስ ክፍል ከመካከለኛው ክፍል ይወርሳል. ሶስት ክፍሎች ካሉ A፣ B እና C እና A ሱፐር መደብ እና B መካከለኛ ክፍል ነው። ከዚያም B ከ A እና C ከ B ይወርሳል, እሱ ባለ ብዙ ደረጃ ውርስ ነው.

በርካታ ውርስ

በብዙ ውርስ ውስጥ፣ ብዙ ሱፐር ክፍሎች እና አንድ ንዑስ ክፍል አሉ። ሶስት ሱፐር ክፍሎች ካሉ A፣ B፣ C እና D ንዑስ ክፍል ነው፣ ከዚያም ክፍል D ከ A፣ B እና C ሊወርስ ይችላል። ብዙ ውርስ በፕሮግራሚንግ ቋንቋ C++ ይደገፋል። እንደ ጃቫ ወይም ሲባሉ የፕሮግራም አወጣጥ ቋንቋዎች አይደገፍም። በእነዚህ ቋንቋዎች ውስጥ ብዙ ውርስን ለመተግበር በይነገጽ ጥቅም ላይ ይውላል።

ተዋረዳዊ ውርስ

ሀ እንደ ሱፐር መደብ እና B፣ C ንዑስ ክፍሎች ካሉ፣ እነዚያ ንዑስ ክፍሎች የክፍል ሀ ንብረቶችን እና ዘዴዎችን ሊወርሱ ይችላሉ። የዚህ አይነት ውርስ ሂራርኪካል ውርስ በመባል ይታወቃል።

ድብልቅ ውርስ

ሌላ ልዩ የውርስ አይነት አለ እሱም ሃይብሪድ ውርስ በመባል ይታወቃል። የባለብዙ ደረጃ እና የበርካታ ውርስ ጥምረት ነው. A፣ B፣ C እና D ክፍሎች ከሆኑ እና B ከሀ እና D ከሁለቱም B እና C የሚወርሱ ከሆነ ይህ ድብልቅ ውርስ ነው።

በፖሊሞርፊዝም እና በOOP ውስጥ ባለው ውርስ መካከል ያለው ተመሳሳይነት ምንድን ነው?

ሁለቱም የነገር ተኮር ፕሮግራሚንግ ጽንሰ-ሀሳቦች ናቸው።

በፖሊሞርፊዝም እና በOOP ውስጥ ባለው ውርስ መካከል ያለው ልዩነት ምንድን ነው?

Polymorphism vs ውርስ በOOP

Polymorphism የአንድ ነገር ባህሪ በተለያዩ መንገዶች የመንቀሳቀስ ችሎታ ነው። ውርስ ነባር ክፍል ንብረቶችን እና ዘዴዎችን በመጠቀም አዲስ ክፍል መፍጠር ነው።
አጠቃቀም
ፖሊሞርፊዝም ዕቃዎች በሚጠናቀሩበት ጊዜ እና በሚሰሩበት ጊዜ የትኞቹን ዘዴዎች ለመጥራት ጥቅም ላይ ይውላል። ውርስ ለኮድ መልሶ ጥቅም ላይ ይውላል።
አተገባበር
Polymorphism በስልቶች ነው የሚተገበረው። ውርስ በክፍል ውስጥ ይተገበራል።
ምድቦች
Polymorphism ከመጠን በላይ መጫን እና መሻር ተብሎ ሊከፋፈል ይችላል። ውርስ በነጠላ ደረጃ፣ ባለ ብዙ ደረጃ፣ ተዋረዳዊ፣ ድብልቅ እና ባለብዙ ውርስ ሊከፋፈል ይችላል።

ማጠቃለያ - ፖሊሞፈርዝም vs ውርስ በOOP

Polymorphism እና ውርስ በነገር ተኮር ፕሮግራሚንግ ውስጥ ዋና ፅንሰ ሀሳቦች ናቸው። በፖሊሞርፊዝም እና ውርስ መካከል ያለው ልዩነት ፖሊሞርፊዝም የበርካታ ቅርፆች የጋራ በይነገጽ ሲሆን ውርስ ደግሞ የነባር ክፍል ንብረቶችን እና ዘዴዎችን በመጠቀም አዲስ ክፍል መፍጠር ነው። ሁለቱም ጽንሰ-ሐሳቦች በሶፍትዌር ልማት ውስጥ በሰፊው ጥቅም ላይ ይውላሉ።

የፒዲኤፍ ፖሊሞርፊዝምን vs ውርስ በOOP አውርድ

የዚህን ጽሁፍ ፒዲኤፍ ስሪት አውርደው እንደ ጥቅስ ማስታወሻ ከመስመር ውጭ ዓላማ መጠቀም ይችላሉ። እባኮትን የፒዲኤፍ ሥሪት እዚህ ያውርዱ በፖሊሞርፊዝም እና ውርስ መካከል ያለው ልዩነት በOOP

የሚመከር: