КомпјутериПрограмирање

Елементи на Јава објект модел: апстрактна класа, интерфејс

Основната идеја на апстрактна класа е содржан во следниве тези: понекогаш не бара готвење класи, а во "мокро" форма. Таквите празни места не може да се користи директно (показ).

Што е апстрактен класа во Java

Размислете уште еден пример. Постои Јава апстрактен класа Календар во java.util пакет. Тоа не се спроведуваат посебни календар, кој се користи, на пример, во Западна и Источна Европа, Кина, Северна Кореја, Тајланд, итн Но, тоа не се многу корисни опции, како што се додавање на неколку дена до одреден датум: .. се потребни овие функции за било календар на имплементација. Невозможно е да се произведе еден примерок од апстрактна класа.

Апстрактните класи, апстрактни методи Јава

Да речеме дека сакате да се развие повеќе графички елементи, на пример, геометриски форми: .. А круг, правоаголник, ѕвезда итн И таму е контејнер кој ги привлекува. Секоја компонента на изглед е различен, па соодветен метод (дури и ако тоа се нарекува боја) се спроведува поинаку. Сепак, секоја компонента има многу сличности: .. На сликата треба да бидат вклучени во кутијата може да имаат боја за да бидат видливи и невидливи, итн Со други зборови, треба да се создаде родител класа за сите овие личности, секоја компонента ќе го наследи општите својства. Но она што за методот на боја? Впрочем, на родител класа не е визуелно претставување. Ако се изјасни за метод на боја во секоја класа самостојно, тоа ќе биде потребно да се анализира она во што се обработува, а потоа да се извршат на актерската екипа. Затоа, методот мора да биде прогласена апстракт на родител класа: методот Поставување наслов без тело. А телото на секоја изведена класа ќе се опише своите. Во Јава, апстрактна класа може да влезе во апстрактни методи.

Ако класа има апстрактни методи, класа е апстрактна. Пред класа зборот стави на клучни зборови апстрактен, насловот на методот - премногу. По насловот на таков метод е да се стави-запирка. Во Јава, апстрактна класа не може да произведува копии. Ако сакаме да го забрани нивното создавање, и покрај тоа што не е апстрактни методи од класата, класа може да биде прогласена за апстрактна. Но, ако класа има барем еден апстрактен метод, класа мора да биде апстрактна. Невозможно е да се класа беше и апстрактното, а финалето, како и начинот премногу. Методот не може да биде апстрактна, приватни, статична, мајчин јазик. За да подкласа еден може да прогласи не се апстрактни и показ, тие мора да ги спроведе сите апстрактни методи родител. Самата класа може да ги користат неговите апстрактни методи.

На пример:

  • апстрактна класа AClass {
  • јавна апстрактен метод празнина (int a) ;
  • }
  • класа BClass се протега AClass {
  • јавни празнина метод (int a) {
  • // тело
  • }

Домашни варијабли како што се апстрактни класа. Тие може да се однесува на не-апстрактни дете на таа класа или да се ништовни.

Интерфејси во Јава - алтернатива на повеќекратно наследување

Во Јава, нема повеќе наследство, бидејќи тогаш постојат некои проблеми. А класа не можат да го наследат од неколку класи. Но, тој може да се имплементираат повеќе интерфејси.

Јава интерфејси и апстрактни класи - концепти се слични, но не се идентични. Интерфејс може да се прогласи за јавноста, тогаш таа е достапна за сите, или можете да ја изостави модификатор јавноста, тогаш интерфејс е достапна само во рамките на пакетот. не е потребно апстрактни клучен збор, бидејќи интерфејсот и така е апстрактен, но може да се определи.

декларација интерфејс

Таа започнува со глава, и е прво да одат во јавни клучен збор, тогаш - збор интерфејс. Тогаш може да има еден збор се протега и пренос интерфејси, од кои наследиле оваа. Не е дозволено да се повторува, а тоа е невозможно да се формира циклична односот на односот на наследството. Потоа доаѓа тело интерфејс, затворени во големите загради. Во телото на елементи на интерфејсот се прогласени: константи поле и апстрактни методи. Сите полиња се јавни финалето статички - сите овие изменувачи не се потребни. Сите методи се сметаат за јавни апстрактни - исто така може да се одредат овие изменувачи. Сега, доволно е кажано за разликата помеѓу апстрактен класа од интерфејс Јава.

  • јавниот интерфејс АИ се протега B, C, D {
  • // тело
  • }

Да се изјасни за интерфејс наследник класа треба да ги користите спроведува клучни зборови:

  • класа AClass спроведува BI, CI, DI {}

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

исто така е дозволено променливи од типот на интерфејс. Тие може да се однесува на еден вид на класа која спроведува овој интерфејс или нула. Таквите променливи имаат сите елементи на класа на објектот, бидејќи предметите се генерирани од страна на часови, а тие, пак, произлегуваат од класата на објектот.

Во овој напис, разговаравме за некои елементи на Јава објект модел - апстрактните класи, апстрактни методи интерфејс.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 mk.atomiyme.com. Theme powered by WordPress.