Шта је наслеђе?

У објектно-оријентисаном програмирању, наслеђивање се односи на способност објекта да преузме једну или више карактеристика из других класа објеката. Наслеђене карактеристике су обично варијабле инстанце или функције члана. Објект који насљеђује ове карактеристике познат је као подкласа, а објект од којег је наслијеђен познат је као суперкласа. Детаљи о томе како се примењује наслеђе варирају од језика до језика, али први језик који је примењен је Симула 1967. године.

За шта се користи наслеђе?

Сврха насљеђивања је консолидација и поновно кориштење кода. На пример, ако су предмети аутомобила, камиона и мотоцикла подкласа суперкласног возила, код који се односи на све њих може се објединити у суперкласу возила. Подкласа ће аутоматски наследити овај код и све будуће промене у њему.

Пет врста наслеђивања

  • Појединачно наслеђивање - Подкласе наслеђују карактеристике из једне суперкласе.
  • Вишеструко наслеђивање - Подкласа може имати више од једне суперкласе и наслеђивати карактеристике од свих њих.
  • Вишеразинско наслеђивање - Подкласа може имати своје подкласе. Другим речима, подкласа суперкласа може сама по себи да буде суперкласа другим подкласама.
  • Хијерархијско наслеђивање - Основна класа делује као надређени надређени на више нивоа подкласа.
  • Хибридно наслеђивање - Комбинација једног или више других типова наслеђивања.

Пример, Објецт-ориентед, програмски изрази