Комплетан увод у апстрактне часове на Јави



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

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

Шта су апстрактни часови на Јави?

Апстрактна настава у делују као граница између методе имплементације и њене функционалности. Користи се за размену функционалности између Бетон чланови одељења и Апстрактан Класа.





Abstract-Classes-in-Java-Edureka

Апстрактне класе се сматрају оним часовима који скривају Примена методе детаље о кориснику и приказују само Функционалност методе. Они се пријављују помоћу кључне речи апстрактан . Ове методе могу да укључују Апстрактан и Не апстрактно методе у њима.

шта су велики подаци и хадооп

Зашто су нам потребни апстрактни часови у Јави?

Потребни су нам часови сажетака на Јави из следећих разлога:



  • Подршка за часове сажетка Резолуција динамичке методе у току
  • Они помажу корисницима да постигну Лабава веза
  • Апстрактне часове одвајају Дефиниција методе од Наслеђеног Поткласе
  • Они пружају Подразумевана функционалност дефинисане методе за све поткласе
  • Апстрактни часови пружају а Предложак за будуће специфичне часове
  • Апстрактна класа дозвољава Код Поновна употребљивост

Правила за употребу класа сажетака у Јави

Да бисмо применили апстрактну класу у Јави, морамо следити правила описана у наставку:



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

Начини постизања апстракције у Јави

Процес апстракције у Јави може се постићи помоћу следеће две методе као што је наведено у наставку:

сличности између јаве и јавасцрипта
  1. Примена апстрактне класе
  2. Имплементација интерфејса

Синтакса за апстрактне часове

Синтакса за дефинисање апстрактних класа и апстрактних метода је следећа:

апстрактни час Едурека {}
метода сажетка класе ()

Практични примери апстрактне наставе

// Апстрактни час

пакет Апстрактна јавна апстрактна класа Особа {име приватног низа приватно Поље низа јавно Персон (Низ нм, Низ ген) {тхис.наме = нм тхис.гендер = ген} јавна сажетак празна Студирање () @Премаши јавни стринг тоСтринг () {ретурн ' Наме = '+ тхис.наме +' :: Гендер = '+ тхис.гендер}}

// Студент Цласс

пакет Апстрактна јавна класа Студент проширује Персон {привате инт СтудентИД јавни студент (Стринг нм, Стринг ген, инт ид) {супер (нм, ген) тхис.СтудентИД = ид} @ Преведи јавну празнину Студиинг () {иф (СтудентИД == 0 ) {Систем.оут.принтлн ('Не студира')} елсе {Систем.оут.принтлн ('Студирање на факултету')}} јавна статичка воид маин (Стринг аргс []) {Студент студент = нев Студент ('Прииа', 'Женско', 0) Особа студент1 = нови студент ('Каран', 'Мушко', 201021) Особа студент2 = нови студент ('Кумари', 'Женско', 101021) Особа студент3 = нови студент (' Јохн ',' Мале ', 201661) студент.Студиинг () студент1.Студиинг () студент2.Студиинг () студент3.Студиинг () Систем.оут.принтлн (студент.тоСтринг ()) Систем.оут.принтлн (студент1.тоСтринг ()) Систем.оут.принтлн (студент2.тоСтринг ()) Систем.оут.принтлн (студент3.тоСтринг ())}}

Излаз:

Не учи
Стицање дипломе инжењера инжењерства
Стицање дипломе инжењера инжењерства
Стицање дипломе инжењера инжењерства
Име = Прииа :: Пол = Женско
Име = Каран :: Пол = Мушко
Име = Кумари :: Пол = Женско
Име = Јован :: Пол = Мушко

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

Приступ Апстрактни час
Може имати само апстрактне методеМоже имати апстрактне и апстрактне методе
Има само завршне променљивеУкључује не-коначне променљиве
Има само статичке и завршне променљивеИма статичке, нестатичке, коначне, не-коначне променљиве
Неће применити класу сажетакМоже да имплементира интерфејс
Имплементирано помоћу кључне речи „имплементира“Имплементирано помоћу кључне речи „ектендс“
Може проширити само интерфејсМоже проширити Јава класе и интерфејсе
Чланови су подразумевано јавниЧланови могу бити приватни и заштићени

// Апстрактни пример класе

пакет абстацтВСинтерфаце апстрактна класа Облик {Стринг објецтНаме = '' Облик (име низа) {тхис.објецтНаме = наме} апстрактна јавна двострука област () апстрактна јавна воид драв ()} класа Правокутник продужава Облик {инт дужина, ширина Правокутник (инт дужина, инт ширина, име низа) {супер (име) тхис.ленгтх = ленгтх тхис.видтх = видтх} @Оверриде публиц воид драв () {Систем.оут.принтлн ('Правокутник је нацртан')} @Оверриде публиц доубле ареа () {ретурн (доубле) (ленгтх * видтх)}} цласс Цирцле ектендс Схапе {доубле пи = 3.14 инт радиус Цирцле (инт радиус, Стринг наме) {супер (наме) тхис.радиус = радиус} @Оверриде публиц воид драв () { Систем.оут.принтлн ('Круг је исцртан')} @Оверриде јавна двострука површина () {ретурн (доубле) ((пи * радијус * радијус) / 2)}} класа Едурека {публиц статиц воид маин (Стринг [] аргс ) {Облик рецт = нови правоугаоник (20, 30, 'правоугаоник') Систем.оут.принтлн ('Површина правоугаоника:' + рецт.ареа ()) Облик круга = нови круг (20, 'Цицле') Систем.оут .принтлн ('Површина круга је:' + цирцле.ареа ())}}

Излаз:

Површина правоугаоника: 600,0
Површина круга је: 628,0

// Пример интерфејса

пакет абсВСинт интерфејс Облик {воид драв () доубле ареа ()} цласс Правокутник имплементира Схапе {инт ленгтх, видтх Правокутник (инт ленгтх, инт видтх) {тхис.ленгтх = ленгтх тхис.видтх = видтх} @ Оверриде публиц воид драв () {Систем.оут.принтлн ('Правоугаоник је нацртан')} @Оверриде јавна двострука површина () {ретурн (доубле) (ленгтх * видтх)}} класа Круг имплементира Облик {доубле пи = 3.14 инт радиус Цирцле (инт радиус) {тхис.радиус = радиус} @Оверриде публиц воид драв () {Систем.оут.принтлн ('Извучен је круг')} @Оверриде публиц доубле ареа () {ретурн (доубле) ((пи * радијус * радијус) / 2)}} класа Едурека {публиц статиц воид маин (Стринг [] аргс) {Схапе рецт = нев Рецтангле (20, 30) Систем.оут.принтлн ('Површина правоугаоника:' + рецт.ареа ()) Облик круга = нови круг (20) Систем.оут.принтлн ('Подручје круга:' + цирцле.ареа ())}}

Излаз:

Површина правоугаоника: 600,0
Површина круга: 628,0

Овим смо дошли до краја овог чланка. Надам се да сте разумели значај апстракције, синтаксе, функционалности, правила апстракције у Јави и практичних примера повезаних с њима.

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

Имате питање за нас? Спомените то у одељку за коментаре овог блога „Апстрактне класе на Јави“ и јавићемо вам се што је пре могуће.

шта је метода јавасцрипт