Шта је апстракција у ООП-има? Јава Апстрактна класа & амп; Метод

Преглед садржаја:

Anonim

Шта је апстракција у ООП-у?

Апстракција је концепт објектно оријентисаног програмирања који „приказује“ само битне атрибуте и „скрива“ непотребне информације. Главна сврха апстракције је сакривање непотребних детаља од корисника. Апстракција је одабир података из већег базена како би кориснику приказали само релевантне детаље објекта. Помаже у смањењу сложености и напора у програмирању. То је један од најважнијих концепата ООП-а.

Кликните овде ако видео снимку није доступан

Проучимо апстракцију у ООП-има на примеру:

Претпоставимо да желите да направите банкарску апликацију и да се од вас затражи да сакупите све информације о свом клијенту. Постоје шансе да ћете доћи до следећих информација о купцу

Апстракција у Јави

Али, нису потребне све горе наведене информације за креирање банкарске апликације.

Дакле, из тог скупа треба да изаберете само корисне информације за вашу банкарску апликацију. Подаци попут имена, адресе, пореских података итд. Имају смисла за банкарску апликацију која је пример апстракције у ООП-овима

Пошто смо преузели / уклонили / одабрали податке о купцу из већег базена, процес се у ООП-има назива Абстракција.

Међутим, исте информације једном издвојене могу се користити за широк спектар примена. На пример, исте податке можете користити за пријаву у болницу, пријаву портала за посао, владину базу података итд. Са мало или нимало модификација. Дакле, они постају ваши матични подаци. Ово је предност апстракције у ООП-овима.

Разлика између апстракције и инкапсулације

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

Разлика између апстрактне класе и интерфејса

Апстрактни час Интерфејс
Апстрактна класа може имати и апстрактне и апстрактне методе. Интерфејс може имати само апстрактне методе.
Не подржава више наслеђа. Подржава више наслеђа.
Може да обезбеди имплементацију интерфејса. Не може да обезбеди примену апстрактне класе.
Апстрактни час може имати заштићене и апстрактне јавне методе. Интерфејс може имати само јавне апстрактне методе.
Апстрактна класа може имати коначну, статичку или статичку завршну променљиву са било којим спецификатором приступа. Интерфејс може имати само јавну статичку завршну променљиву.

Шта је апстрактни час?

Апстрактна класа је врста класе у ООП-овима, која декларише једну или више апстрактних метода. Ове класе могу имати апстрактне методе као и конкретне методе. Нормална класа не може имати апстрактне методе. Апстрактна класа је класа која садржи најмање једну апстрактну методу.

Шта су апстрактне методе?

Апстрактна метода је метода која има само дефиницију методе, али не садржи имплементацију. Метода без тела позната је као Апстрактна метода. Мора се пријавити у апстрактној класи. Апстрактна метода никада неће бити коначна јер апстрактна класа мора применити све апстрактне методе.

Предности апстракције

  • Главна предност употребе апстракције у програмирању је та што вам омогућава да групишете неколико сродних класа као браћу и сестре.
  • Апстракција у објектно оријентисаном програмирању помаже да се смањи сложеност процеса дизајнирања и имплементације софтвера.

Када користити апстрактне методе и апстрактну наставу?

Апстрактне методе се углавном декларишу тамо где две или више поткласа такође раде исту ствар на различите начине кроз различите имплементације. Такође проширује исту класу Сажетак и нуди различите примене апстрактних метода.

Апстрактне класе помажу у описивању генеричких типова понашања и хијерархије класа објектно оријентисаног програмирања. Такође описује поткласе које нуде детаље о примени апстрактне класе.

Резиме:

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