Տարբերությունը Java-ում գերբեռնվածության և վերացման միջև

Բովանդակություն:

Տարբերությունը Java-ում գերբեռնվածության և վերացման միջև
Տարբերությունը Java-ում գերբեռնվածության և վերացման միջև

Video: Տարբերությունը Java-ում գերբեռնվածության և վերացման միջև

Video: Տարբերությունը Java-ում գերբեռնվածության և վերացման միջև
Video: Javascript - Զանգվածներ (Arrays) 2024, Հուլիսի
Anonim

Հիմնական տարբերություն – գերբեռնում ընդդեմ գերբեռնման Java-ում

Օբյեկտ-կողմնորոշված ծրագրավորումը (OOP) ծրագրային ապահովման մշակման հիմնական պարադիգմ է: Դա դասերի և օբյեկտների միջոցով ծրագիր նախագծելու մեթոդաբանություն է: Դասը նախագիծ է: Այն նկարագրում է, թե ինչ պետք է պարունակի առարկան: Այն սահմանում է հատկությունները կամ ատրիբուտները և մեթոդները, որոնցից պետք է կազմված լինի օբյեկտը: Հետևաբար, օբյեկտը դասի օրինակ է: Այս օբյեկտները շփվում են այլ օբյեկտների հետ: OOP-ի հիմնական հասկացություններից մեկը պոլիմորֆիզմն է: Սա օբյեկտի մի քանի ձևերով վարվելու ունակություն է: Պոլիմորֆիզմը դասակարգվում է երկու մասի, որոնք գերբեռնված են և գերակշռող:Այս հոդվածը քննարկում է Java-ում այս երկուսի միջև եղած տարբերությունը: Java-ում գերբեռնման և գերբեռնման հիմնական տարբերությունն այն է, որ գերբեռնումը տարբեր իրականացումներով նույնանուն մի քանի մեթոդներ ստեղծելու ունակությունն է, իսկ Overriding-ը ենթադաս մեթոդի իրականացում ապահովելն է, որն արդեն գոյություն ունի սուպերկլասում::

Ի՞նչ է գերբեռնումը Java-ում:

Գերբեռնումը տարբեր իրականացումներով նույնանուն բազմաթիվ մեթոդներ ստեղծելու ունակություն է: Տե՛ս ստորև բերված Java կոդը:

Տարբերությունը Java-ում գերբեռնվածության և գերակշռման միջև
Տարբերությունը Java-ում գերբեռնվածության և գերակշռման միջև
Տարբերությունը Java-ում գերբեռնվածության և գերակշռման միջև
Տարբերությունը Java-ում գերբեռնվածության և գերակշռման միջև

Նկար 01. Java ծրագիր, որը բացատրում է ծանրաբեռնվածությունը տարբեր թվով արգումենտներով

Ըստ վերը նշված ծրագրի՝ A դասը պարունակում է նույն անունով երկու մեթոդ։ Առաջին գումարման մեթոդն ունի երկու պարամետր. Երկրորդ գումարման մեթոդն ունի երեք պարամետր. A տիպի օբյեկտ ստեղծելիս և sum(2, 3) կանչելիս այն կկանչի sum մեթոդը երկու պարամետրով, որոնք sum(int a, int b) են և վերադարձնում է 5: A տիպի օբյեկտ ստեղծելիս և sum(2) կանչելիս:, 3, 4), այն կկանչի մյուս գումարման մեթոդը երեք պարամետրով, որը գումարն է (int a, int b, int c) և վերադարձնում է 9:

Մեթոդի անունը նույնն է, բայց պարամետրերի քանակը տարբեր է: Կարելի է նկատել, որ նույն առարկան այլ կերպ է վարվում։ Այս հայեցակարգը հայտնի է որպես գերբեռնվածություն: Այն նաև կոչվում է ստատիկ կապում կամ կազմում է ժամանակի պոլիմորֆիզմ:

Կարող է նաև ծանրաբեռնվել տվյալների տարբեր տեսակներով: Տե՛ս ստորև բերված Java կոդը:

Տարբերությունը Java-ում գերբեռնման և վերացման միջև_Նկար 02
Տարբերությունը Java-ում գերբեռնման և վերացման միջև_Նկար 02
Տարբերությունը Java-ում գերբեռնման և վերացման միջև_Նկար 02
Տարբերությունը Java-ում գերբեռնման և վերացման միջև_Նկար 02

Նկար 02. Java ծրագիր, որը բացատրում է ծանրաբեռնվածությունը տարբեր թվով արգումենտներով

Ըստ վերը նշված ծրագրի՝ A դասը բաղկացած է նույն անունով երկու մեթոդից։ sum(int a, int b) մեթոդը ստանում է երկու ամբողջ արժեք։ Գումարը (double a double b) ստանում է երկու կրկնակի արժեք: A տիպի օբյեկտ ստեղծելիս և գումարը (2, 3) կանչելիս այն կկանչի sum(int a, int b) և վերադարձնում է 5 արժեքը: Գումարը (3.4, 5.6) կանչելիս կկանչի sum (double a double): բ) և վերադարձրեք 9.0 արժեքը: Այս օրինակում մեթոդներն ունեն նույն անունը, բայց տարբեր տեսակի փոփոխականներ: Սա նույնպես ծանրաբեռնված է:

Ի՞նչ է Overriding-ը Java-ում:

Java-ում հնարավոր է ենթադասեր կառուցել արդեն գոյություն ունեցող դասերով։Սկզբից նոր դաս ստեղծելու փոխարեն հնարավոր է օգտագործել արդեն գոյություն ունեցող դասի հատկություններն ու մեթոդները։ Գոյություն ունեցող դասը գերդասն է, իսկ ստացված դասը՝ ենթադասը։ Երբ ենթադասը ապահովում է մեթոդի իրականացում, որն արդեն գտնվում է գերդասում, այն հայտնի է որպես գերակայող: Տե՛ս ստորև բերված Java ծրագիրը:

Հիմնական տարբերությունը Java-ում գերբեռնվածության և գերակշռման միջև
Հիմնական տարբերությունը Java-ում գերբեռնվածության և գերակշռման միջև
Հիմնական տարբերությունը Java-ում գերբեռնվածության և գերակշռման միջև
Հիմնական տարբերությունը Java-ում գերբեռնվածության և գերակշռման միջև

Գծապատկեր 03. Java ծրագիր՝ վերացնելու համար

Ըստ վերը նշված ծրագրի՝ A դասը ունի մեթոդի ցուցադրում(): B դասը տարածվում է A դասից, ուստի A դասի հատկությունները և մեթոդները հասանելի են B դասի կողմից:B դասը ունի մեթոդի ցուցադրում()՝ հատուկ իրականացմամբ: A տիպի օբյեկտ ստեղծելիս և ցուցադրման մեթոդը կանչելիս այն կտա B ելք: Թեև A դասն ունի ցուցադրման մեթոդ, այն վերագրվում է B դասի ցուցադրման մեթոդին: Ենթադասը իրականացնում է մի մեթոդ, որն արդեն գոյություն ունի գերդասարանում:

Այս հայեցակարգը պոլիմորֆիզմի տեսակ է և հայտնի է որպես գերակայող: Այն նաև կոչվում է ուշ կապում, դինամիկ կապում, վազքի ժամանակի պոլիմորֆիզմ:

Որո՞նք են նմանությունները գերբեռնման և գերբեռնման միջև Java-ում:

  • Երկուսն էլ պոլիմորֆիզմի տեսակներ են։
  • Գերբեռնման և վերագրման դեպքում մեթոդներն ունեն նույն անվանումը:

Ո՞րն է տարբերությունը Java-ում գերբեռնման և գերբեռնման միջև:

Գերբեռնում ընդդեմ գերբեռնման Java-ում

Վերբեռնումը Java-ում տարբեր իրականացումներով նույնանուն բազմաթիվ մեթոդներ ստեղծելու ունակություն է: Վերակայումը Java-ում ապահովում է ենթադասի մեթոդի հատուկ իրականացում սուպերկլասում արդեն գոյություն ունեցող մեթոդի համար:
Պարամետրեր
Գերբեռնման ժամանակ մեթոդներն ունեն նույն անվանումը, բայց տարբեր թվով պարամետրեր կամ տարբեր տեսակի պարամետրեր: Գերակայման դեպքում մեթոդներն ունեն նույն անվանումը և պարամետրերը պետք է լինեն նույնը:
Թեմաներ
Գերբեռնում է տեղի ունենում դասարանում: Գերակայումը տեղի է ունենում երկու դասերի մեջ, որոնք ունեն ժառանգական հարաբերություններ:
Հոմանիշներ
Գերբեռնվածությունը կոչվում է կազմված ժամանակի պոլիմորֆիզմ: Գերակայությունը կոչվում է գործարկման ժամանակի պոլիմորֆիզմ:

Ամփոփում – գերբեռնում ընդդեմ գերբեռնման Java-ում

Պոլիմորֆիզմը հիմնական հասկացությունն է օբյեկտ կողմնորոշված ծրագրավորման մեջ: Այն ապահովում է օբյեկտի համար մի քանի ձևով վարվելու ունակություն: Սա կարող է լինել կամ գերծանրաբեռնված կամ գերակշռող: Գերբեռնումը կոմպիլյացիայի ժամանակի պոլիմորֆիզմն է, իսկ գերակշռողը՝ գործարկման ժամանակի պոլիմորֆիզմը։ Դրանք օգտակար են ծրագրային հավելվածների մշակման մեջ: Overriding-ի և overloading-ի միջև տարբերությունն այն է, որ գերբեռնումը տարբեր իրականացումներով նույնանուն մի քանի մեթոդներ ստեղծելու ունակություն է, իսկ Overriding-ը տրամադրում է հատուկ իրականացում ենթադասային մեթոդի համար, որն արդեն գոյություն ունի սուպերկլասում: Java-ում հնարավոր է իրականացնել և՛ գերբեռնում, և՛ գերբեռնում:

Ներբեռնեք PDF Overloading vs Overriding-ը Java-ում

Դուք կարող եք ներբեռնել այս հոդվածի PDF տարբերակը և օգտագործել այն անցանց նպատակներով՝ ըստ մեջբերումների: Խնդրում ենք ներբեռնել PDF տարբերակը այստեղ Java-ում գերբեռնման և վերացման միջև տարբերությունը

Խորհուրդ ենք տալիս: