Јава

Јава апстрактни час

Јава апстрактни час
Концепт апстракције је да истакне задатак објекта уместо да истакне, „како објекат обавља задатак“. Ова врста концепта може се применити на два начина у Јави. То су апстрактна класа и интерфејс. Апстрактни час садржи кључну реч апстрактан. Ова класа се не може покренути као друге нормалне класе, али подкласа се може извести наслеђивањем апстрактне класе. Карактеристикама апстрактне класе може се приступити стварањем објекта подкласе. Апстрактна класа такође може садржати конструктор којем се може приступити стварањем објекта класе подкласе. Како можете користити апстрактну класу на Јави, приказано је у овом упутству.

Синтакса:

апстрактна класа цлассНаме
имена_променљивих;
апстрактна метода1 ();
јавни метод2 ()
изјаве 1… Н

Апстрактна класа може садржати атрибут или променљиве, апстрактну методу и нормалну методу или било коју од њих. Али поткласа апстрактне класе може применити само апстрактну методу апстрактне класе.

Пример-1: Апстрактни час са јавном методом

Следећи пример показује како апстрактну класу можете прогласити јавним методом и начин употребе апстрактне класе стварањем поткласе. Овде апстрактна класа садржи јавни метод са именом детаљи () која се примењује унутар апстрактне класе. Објекат поткласе је створен за приступ јавној методи апстрактне класе.

// Дефинисање апстрактне класе јавном методом
апстрактна књига са предавањима
детаљи о јавним празнинама ()
Систем.напоље.принтлн ("Име књиге: Научите ПХП за 15 минута");
Систем.напоље.принтлн ("Име аутора: Јаке Вригхт");
Систем.напоље.принтлн ("Цена с попустом: 35 УСД");


// Дефинисање подкласе
цласс пхп продужава боок

// Главна класа
цласс абстрацт1
јавна статичка воид главна (Стринг [] аргс)
пхп бк = нови пхп ();
бк.детаљи ();

Излаз:

Следећи излаз ће се појавити након покретања кода. Ево, детаљи () позива се метода апстрактне класе, а текст се штампа из методе.

Пример-2: Апстрактни час са апстрактном методом и јавном методом

Следећи пример показује како се апстрактна класа може декларисати са променљивим, апстрактном методом и јавном методом. Наводи јавне методе дефинисани су унутар апстрактне класе, али тело апстрактне методе је празно што је имплементирано унутар поткласе апстрактне класе. Овде се декларишу две поткласе проширивањем апстрактне класе. Подкласа именована квадрат израчунаће и одштампати површину квадрата на основу вредности н променљива. Подкласа именована правоугаоник израчунаће и одштампати површину правоугаоника на основу вредности х и в Променљиве. Јавни метод, реадДата () позива се параметром именованим тип да би се идентификовало која променљива (и) апстрактне класе ће бити иницијализоване. Вредност тип променљива ће бити 1 за иницијализацију вредности н и 2 за иницијализацију вредности х и в.

// Дефинисање апстрактне класе апстрактном методом и јавном методом
апстрактно подручје класе
јавни инт н, х, в;
резултат празнине сажетак ();
јавна празнина реадДата (инт тип)
иф (типе == 1)
н = 10;

елсе
х = 20;
в = 30;



// Дефинисање квадратне подкласе
класни квадрат се простире на површину
јавни воид резултат ()
// Израчунај површину квадрата
инт ареаВал = н * н;
Систем.напоље.принтлн ("Површина квадрата је" + ареаВал);


// Дефинисање подкласе правоугаоника
класа правоугаоник се протеже површином
јавни воид резултат ()
// Израчунај површину правоугаоника
инт ареаВал = х * в;
Систем.напоље.принтлн ("Површина правоугаоника је" + ареаВал);


// Главна класа
цласс абстрацт2
јавна статичка воид главна (Стринг [] аргс)
// Креирање објекта класе квадрат
квадрат ск = нови квадрат ();
ск.реадДата (1);
ск.резултат ();
// Стварање објекта класе правоугаоника
правоугаоник рк = нови правоугаоник ();
рк.реадДата (2);
рк.резултат ();

Излаз:

Следећи излаз ће се појавити након покретања кода. Излаз приказује површину квадрата где је вредност н је 10 и површина правоугаоника где је вредност х је 20, и вредност в је 30.

Пример-3: Апстрактна класа са конструктором

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

// Дефинисати апстрактну класу конструктором
апстрактни бројеви разреда
// декларишу променљиве
заштићени коначни инт а, б;
// конструктор апстрактне класе
јавни бројеви (инт к, инт и)
ово.а = к;
ово.б = и;

// Јавна метода
јавни сажетак воид маквал ();

// Дефинисање подкласе
класа финдМак проширује бројеве
// Конструктор подкласе
јавни финдМак (инт к, инт и)
// Позив конструктора апстрактне класе
супер (к, и);

// Применити апстрактну методу
јавна празнина маквал ()
ако (а> б)
Систем.напоље.принтлн (а + "је веће од" + б);

елсе
Систем.напоље.принтлн (б + "је веће од" + а);



// Главна класа
цласс абстрацт3
јавна статичка воид главна (Стринг [] аргс)
// Стварање објекта поткласе
финдМак фмак = нови финдМак (34,89);
// Пронађите максимум
фмак.маквал ();

Излаз:

Следећи излаз ће се појавити након покретања скрипте. Ево, 34 и 89 дате су као вредности параметара конструктора. Ове вредности се упоређују у апстрактној методи која је примењена у подкласи и исписује следећу поруку.

Закључак:

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

Како да промените леви и десни тастер миша на рачунару са Виндовс 10
Сасвим је нормално да су сви уређаји рачунарског миша ергономски дизајнирани за дешњаке. Али постоје доступни уређаји за миш који су посебно дизајнира...
Емулирајте кликове мишем лебдењем помоћу миша без клика у оперативном систему Виндовс 10
Коришћење миша или тастатуре у погрешном положају прекомерне употребе може резултирати многим здравственим проблемима, укључујући напрезање, синдром к...
Додајте покрете миша у Виндовс 10 помоћу ових бесплатних алата
Последњих година рачунари и оперативни системи су се увелико развили. Било је време када су корисници морали да користе команде за навигацију кроз мен...