Разлика између преоптерећења и надјачавања у Јави

Кључна разлика : Преоптерећење значи имати двије методе исте класе с истим именом и са различитим типовима параметара, док оверридинг значи имати двије различите методе у истој класи с истим типовима параметара, али с различитим имплементацијама.

Прекорачење и преоптерећење метода су два концепта или технике који се користе у Јава програмским језицима. Оба концепта омогућавају програмеру да обезбеди различите имплементације за методе под истим именом. Овај чланак прави разлику између два концепта програмирања.

Преоптерећење функција или преоптерећење метода омогућава креирање неколико метода под истим именом, у истој класи, али се међусобно разликују у улазном и излазном типу функције. Једноставно се дефинира као способност једне функције да обавља различите задатке.

У преоптерећењу, имплементације метода деле исто име зато што обављају сличне задатке. Такође, преоптерећење се сматра полиморфном у природи. Функције које имају различите имплементације зависе од њихових специфицираних типова аргумената. Обично се повезује са статичким програмским језицима који намећу проверу типа у позивима функција. Такође се сматра практичним јер омогућава програмеру да напише више различитих метода у истој класи. Међутим, у преоптерећењу извршног процесора мијења се име свих преоптерећених метода, што може бити проблем.

Надјачавање метода, у објектно оријентисаном програмирању, је особина која дозвољава поткласи или подређеној класи да обезбеди специфичну имплементацију методе која је већ обезбеђена од једне од његових супер-класа или родитељских класа. Имплементација у поткласи надјачава или замењује имплементацију у родитељској класи обезбеђивањем методе под истим именом, истим параметрима или потписом, и истим повратним типом као методом у родитељској класи.

Код надјачавања метода, функције се кодирају за извршавање одређених задатака у програму. Преклапање зависи од присуства функције основне класе за њен изглед. Овде извршена функција одређена је објектом који се користи за његово позивање, тј. Ако се објекат родитељске класе користи за позивање методе, тада ће се извршити функција у родитељској класи. Преокрет је у природи полиморфан; помаже у дизајнирању програма заснованих на првом имплицитном параметру, који се може ријешити за вријеме извођења. У Јава-у постоје неки језици који дозвољавају програмеру да спријечи да се метод замијени.

Поређење између преоптерећења и поништавања:

Преоптерећење

Оверридинг

Дефиниција

То значи имати методе исте класе под истим именом, али свака метода има различите параметре или има исте параметре са различитим типовима и редослиједом.

То значи имати под-класу са истим методама под истим именом и тачно исти тип параметара и исти повратни тип као супер класа.

Значење

То значи да више од једне методе имају исто име у истој класи, али имају другачији потпис.

То значи да се метода основне класе поново дефинира у изведеној класи с истим потписом.

Понашање

Додаје или проширује понашање метода.

Она мења постојеће понашање методе.

Полиморфизам

То је полиморфизам времена компајлирања.

То је полиморфизам извођења.

Статичка метода

Статичка метода може бити преоптерећена.

Статичка метода се не може заменити.

Бонд

Статиц бонд.

Динамиц бонд.

Наслеђивање

Може или не мора да захтева наслеђивање.

Увијек захтијева насљедство.

Удружење

Обично се повезује са статичким програмским језицима.

Обично се повезује са објектно оријентисаним програмима.

Потпис

Методе имају другачији потпис.

Методе морају имати исти потпис.

Брзина

То је брже него пребрзо.

Спор је у односу на преоптерећење.

Цлассес

Не захтева више од једне класе за преоптерећење.

Потребно је најмање две класе за преоптерећење.

Левел

Методе могу имати било који ниво приступа.

Методе имају исти или широки приступни ниво.

Пример

Цласс Адд

{

инт сум (инт а, инт б)

{

ретурн а + б;

}

инт сум (инт а)

{

врати а + 10;

}

}

Цласс А // Супер Цласс

{

воид дисплаи (инт нум)

{

принт нум;

}

}

// Класа Б наслеђује класу А

Класа Б // Подкласа

{

воид дисплаи (инт нум)

{

принт нум;

}

}

Рецоммендед

Везани Чланци

  • популарна поређења: Разлика између скулптуре и архитектуре

    Разлика између скулптуре и архитектуре

    Кључна разлика: Скулптура се може дефинисати као тродимензионална уметност која се ствара обликовањем фигура или дизајна у чврстом материјалу. Архитектура је дефинисана као уметност и наука пројектовања и изградње објеката који се могу користити у сврху становања. Окфорд Дицтионари дефинира скулптуру као 'умјетност израде дво- или тродимензионалних репрезентативних или апстрактних облика, посебно резбарењем камена или дрвета или лијевањем метала или гипса'. Ријеч је изведена
  • популарна поређења: Разлика између моде и тренда

    Разлика између моде и тренда

    Кључна разлика: Мода и тренд су најновије ријечи које се чују од младих, али о чему се ради? Мода није ништа друго него стил и дизајн одеће, прибора, обуће, шминке или шишања. Иако је тренд дио моде, то је ријеч која је позната по томе што инспирира једну о најновијој колекцији у прописаном времену. Ми углавно
  • популарна поређења: Разлика између дијабетеса и високог крвног шећера

    Разлика између дијабетеса и високог крвног шећера

    Кључна разлика: Високи крвни шећер је услов који понекад може утицати на неке људе. Концентрација шећера у крви или ниво глукозе у крви је количина глукозе (шећера) која је присутна у крви. Ако су нивои шећера у крви често изван нормалног опсега, то може бити показатељ медицинског стања, као што је дијабетес. Дијабетес је врста болести кој
  • популарна поређења: Разлика између добављача и дистрибутера

    Разлика између добављача и дистрибутера

    Кључна разлика: Добављач испоручује робу или услуге, док дистрибутер дистрибуира производ директно купцу или крајњем кориснику. Добављач је онај који испоручује производе, робу или услугу потрошачу. У пословном смислу, ради се о „страни која испоручује робу или услуге“, а која се може разликовати од извођача или подуговарача, који обично додаје специјализоване по
  • популарна поређења: Разлика између ТФТ-а и ЛЦД-а

    Разлика између ТФТ-а и ЛЦД-а

    Кључна разлика: ЛЦД-ови су врста телевизијског екрана који користи течне кристале спојене између два листа поларизујућег материјала. ТФТ (транзистор танког филма) је транзистор са ефектом поља који се користи за изградњу ЛЦД екрана и уграђен је у сваки пиксел, што га чини бржим и даје бољи квалитет слике. ЛЦД је врста телевизијског екрана који користи течне кристале у сендвичу између два листа поларизујућег материјала. ЛЦД екрани се користе у телевизорима, компјутерским мониторима, сатовима, калкулаторима, мобилним телефонима, итд. ЛЦД монитори пружај
  • популарна поређења: Разлика између Диет Цоке и Цоке Зеро

    Разлика између Диет Цоке и Цоке Зеро

    Кључна разлика: Диет Цоке и Цоке Зеро се разликују у пропорцијама састојака који им заправо дају различите профиле укуса. Такође, Диет Цоке има 1 калорија по 100мл, док Цоке Зеро има 0.5 калорија на 100мл. Диет Цоке и Цоке Зеро су производи компаније Цоца-Цола. Оба производа су замишљена као замена за ниске калорије уобичајено
  • популарна поређења: Разлика између ЦТЦ и ЕЦТЦ

    Разлика између ЦТЦ и ЕЦТЦ

    Кључна разлика: ЦТЦ представља Цост то Цомпани. У основи, то је пакет плаћа запосленог. Међутим, то је много више од традиционалне плате. ЦТЦ је укупан износ трошкова који послодавац троши за једног запосленог у години. ЕЦТЦ означава очекивани трошак за компанију. ЕЦТЦ је трошак који компанија очекује да ће настати у случају да ангажује тог испитаника као запосленог. Једном када је испитаник а
  • популарна поређења: Разлика између Блацкберри К10 и Сони Кспериа З

    Разлика између Блацкберри К10 и Сони Кспериа З

    Кључна разлика: БлацкБерри К10 има 3, 1-инчни АМОЛЕД капацитивни екран осетљив на додир који омогућава корисницима приступ подацима користећи додир и тежи око 139 грама. Испод екрана налази се пуна КВЕРТИ тастатура која је слична онима на старом БлацкБеррију. Уређај покреће 1.5 ГХз Цортек-А9 Дуал-цоре
  • популарна поређења: Разлика између социјализма и комунизма

    Разлика између социјализма и комунизма

    Кључна разлика: Социјализам се односи на економски систем који има за циљ расподјелу ресурса свакој особи према њиховим дјелима. Комунизам се односи на економски и политички систем који има за циљ расподјелу ресурса свакој особи према њиховим потребама. Комунизам и социјализам су идеолошки принципи који су се развили као одговор на индустријску револуцију. Током индустријске револуције, власници капиталистичких фабрика постали су изнимно богати искориштавајући

Избор Уредника

Разлика између вакинг и ванинг

Кључна разлика: Вакинг и ванинг су два термина која су често повезана са фазама Месеца. Процес лунарних фаза које се мењају између младог месеца и пуног месеца пада под појмове слабљења и депилације. Према Дицтионари.цом, опадајући месец је „месец у било које време после пуног месеца и пре новог месеца (такозвани зато што се његово осветљено подручје смањује)“