Апстрактна настава у помажу корисницима да постигну апстракцију, која је најважнија објектно оријентисана пракса програмирања која се прати током процеса дизајнирања софтвера. У овом чланку ћемо размотрити терминологију апстрактних класа у следећем тексту.
- Шта су апстрактни часови на Јави?
- Зашто су нам потребни апстрактни часови у Јави?
- Правила за употребу класа сажетака у Јави
- Начини постизања апстракције у Јави
- Синтакса за апстрактне часове
- Практични примери апстрактне наставе
- Разлика између интерфејса и апстрактне класе
Шта су апстрактни часови на Јави?
Апстрактна настава у делују као граница између методе имплементације и њене функционалности. Користи се за размену функционалности између Бетон чланови одељења и Апстрактан Класа.
Апстрактне класе се сматрају оним часовима који скривају Примена методе детаље о кориснику и приказују само Функционалност методе. Они се пријављују помоћу кључне речи апстрактан . Ове методе могу да укључују Апстрактан и Не апстрактно методе у њима.
шта су велики подаци и хадооп
Зашто су нам потребни апстрактни часови у Јави?
Потребни су нам часови сажетака на Јави из следећих разлога:
- Подршка за часове сажетка Резолуција динамичке методе у току
- Они помажу корисницима да постигну Лабава веза
- Апстрактне часове одвајају Дефиниција методе од Наслеђеног Поткласе
- Они пружају Подразумевана функционалност дефинисане методе за све поткласе
- Апстрактни часови пружају а Предложак за будуће специфичне часове
- Апстрактна класа дозвољава Код Поновна употребљивост
Правила за употребу класа сажетака у Јави
Да бисмо применили апстрактну класу у Јави, морамо следити правила описана у наставку:
- Апстрактна класа мора бити декларисана помоћу апстрактан кључна реч.
- Апстрактни часови могу да укључују апстрактан и не апстрактан методе.
- Апстрактни час не може бити инстанцирано.
- Могу да укључују конструктори и статички методе.
- Апстрактни час укључује коначни методе.
Начини постизања апстракције у Јави
Процес апстракције у Јави може се постићи помоћу следеће две методе као што је наведено у наставку:
сличности између јаве и јавасцрипта
- Примена апстрактне класе
- Имплементација интерфејса
Синтакса за апстрактне часове
Синтакса за дефинисање апстрактних класа и апстрактних метода је следећа:
апстрактни час Едурека {}
метода сажетка класе ()
Практични примери апстрактне наставе
// Апстрактни час
пакет Апстрактна јавна апстрактна класа Особа {име приватног низа приватно Поље низа јавно Персон (Низ нм, Низ ген) {тхис.наме = нм тхис.гендер = ген} јавна сажетак празна Студирање () @Премаши јавни стринг тоСтринг () {ретурн ' Наме = '+ тхис.наме +' :: Гендер = '+ тхис.гендер}}
// Студент Цласс
пакет Апстрактна јавна класа Студент проширује Персон {привате инт СтудентИД јавни студент (Стринг нм, Стринг ген, инт ид) {супер (нм, ген) тхис.СтудентИД = ид} @ Преведи јавну празнину Студиинг () {иф (СтудентИД == 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ЕЕ и СОА дизајниран је за студенте и професионалце који желе да буду Јава програмер. Курс је дизајниран да вам пружи почетну предност у Јава програмирању и обучи вас за основне и напредне Јава концепте, заједно са разним Јава оквирима као што су Пролеће .
Имате питање за нас? Спомените то у одељку за коментаре овог блога „Апстрактне класе на Јави“ и јавићемо вам се што је пре могуће.
шта је метода јавасцрипт