1. Понятие позднего и раннего связывания. Ключевые слова virtual, override


Download 0.51 Mb.
bet8/17
Sana01.09.2023
Hajmi0.51 Mb.
#1672075
1   ...   4   5   6   7   8   9   10   11   ...   17
Bog'liq
C# да ПОЛИМОРФИЗМ ва ИНТЕРФЕЙСЛАР

Интерфейс хусусиятлари:
• интерфейсда унинг элементларини амалга оширишни киритиш мумкин эмас;
• интерфейснинг намунасини (нусхасини) яратиш мумкин эмас;
• интерфейсга ҳавола яратишингиз мумкин;
• интерфейсда конструкторлар бўлиши мумкин эмас;
• интерфейс майдонларни ўз ичига олмайди;
• интерфейсда операторни қайтаюклаш амалга оширилмайди;
• барча интерфейс методллари келишув бўйича public деб эълон қилинади.

Авлод синфларда интерфейслардан фойдаланилганда:
• уни амалга ошириш жараёнида метод учун кириш модификаторини ўзгартириш тақиқланади;
• интерфейс методларини virtual деб эълон қилиш мумкин эмас;
• Static калит сўзи билан интерфейс методларини эълон қилиш тақиқланади (статик сифатида).

2. Какое отличие между интерфейсами и абстрактными классами?
В языке программирования C# существуют следующие отличия между интерфейсами и абстрактными классами:

  1. В интерфейсе запрещено прописывать реализацию его членов. В абстрактном классе часть членов может иметь реализацию. Иными словами, интерфейс это тот же абстрактный класс, у которого все методы абстрактные.

  2. В интерфейсе запрещено описывать поля (переменные, объекты), в абстрактном классе можно.

  3. В интерфейсе запрещено объявление перегруженных операторов. В абстрактном классе при соблюдении некоторых условий допускается объявление перегруженных операторов.

  4. Интерфейс не может содержать конструктор. В абстрактном классе может быть объявлен конструктор.

  5. Любой класс может быть унаследован от нескольких интерфейсов. При этом любой класс может быть унаследован только от одного абстрактного класса (и не более).

  6. В интерфейсе запрещено объявлять статические элементы (с ключевым словом static). В абстрактном классе допускается объявление статических элементов.

  7. В интерфейсе все элементы считаются как public, и поэтому модификаторы доступа в интерфейсе не используются. В абстрактном классе элементы могут быть объявлены с любым модификатором доступа (private, protected, public).



Download 0.51 Mb.

Do'stlaringiz bilan baham:
1   ...   4   5   6   7   8   9   10   11   ...   17




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling