Sinif və İnterfeys Arasındakı Fərq

Mündəricat:

Sinif və İnterfeys Arasındakı Fərq
Sinif və İnterfeys Arasındakı Fərq

Video: Sinif və İnterfeys Arasındakı Fərq

Video: Sinif və İnterfeys Arasındakı Fərq
Video: Dərs 6 - Fərdi kompüterlərin təsnifatı və əsas tərkib hissələri 2024, Iyun
Anonim

Əsas Fərq – Sinif və İnterfeys

Obyekt yönümlü Proqramlaşdırma(OOP) proqram təminatının hazırlanmasında ümumi paradiqmadır. Bu, siniflər və obyektlərdən istifadə edərək real dünya ssenarilərini proqramlaşdırmaya gətirməyə kömək edir. Sinif bir obyekt yaratmaq üçün plandır. Proqramçı xassələri və metodları olan sinif yarada bilər. Tələbə və müəllim obyektdir. Bir obyektin yaradılması instantasiya kimi tanınır. OOP həmçinin interfeyslərdən istifadə edir. İnterfeyslər və siniflər oxşar görünə bilər, lakin onların fərqi var. Bu məqalə sinif və interfeys arasındakı fərqi müzakirə edir. Sinif və interfeys arasındakı əsas fərq ondan ibarətdir ki, sinif bir obyekti yaratmaq üçün bir plan olan bir istinad növüdür, interfeys isə bir obyekti yaratmaq üçün istifadə edilə bilməyən bir istinad növüdür.

Sinif nədir?

OOP-da hər şey obyekt kimi qəbul edilir. Sinif olmadan obyekt yaratmaq mümkün deyil. Sinif bir obyekt yaratmaq üçün plandır. Ev tikərkən memar planı çəkir. Plan bir sinifə bənzəyir. Ev obyektin oxşarıdır. Sinif bir obyekt qurmaq planıdır. Obyekt sinifdən istifadə etməklə yaradılmışdır.

Sinif xassələri və metodları ehtiva edir. Tələbənin adı, sinif, indeks nömrəsi kimi xüsusiyyətləri ola bilər. Şagirdin oxumaq, gəzmək, öyrənmək kimi üsulları ola bilər. Sinif lazımi xüsusiyyətlər və metodlarla yaradılmışdır.

Bir çox proqramlaşdırma dillərində sinif yaratmaq üçün sintaksis aşağıdakı kimidir. O, sinif açar sözündən istifadə etməklə yaradılmışdır.

sinif sinif_adı {

// xassələr

//metodlar

}

C və Java kimi proqramlaşdırma dilləri sinifdən istifadə edərək obyekt yaratmaq üçün oxşar sintaksisə əməl edir. Sinif adının Tələbə olduğunu fərz edin.

Tələbə s1=yeni Tələbə ();

Bu s1 obyektdir. “Yeni” açar sözü xassələr üçün yaddaş ayırmaq üçün istifadə olunur. Sinfin xassələri və ya dəyişənləri işə salmaq üçün konstruktoru da var.

Xassələr və üsullar kimi sinif üzvlərinin giriş dəyişdiriciləri var. Giriş spesifikatorları həmin üzvlərin digər siniflər üçün əlçatanlığını və görünməsini təsvir edir. Sinfin üzvləri ictimai, özəl və qorunan kimi giriş təyinedicilərinə malik ola bilər. İctimai üzvlər digər siniflər tərəfindən əlçatandır. Şəxsi üzvlər yalnız sinif üçün əlçatandır. Qorunan üzvlər sinif və müvafiq alt siniflər daxilində əlçatandır.

İnterfeys nədir?

Abstraksiya Obyekt yönümlü proqramlaşdırmanın sütunudur. Tətbiq detallarını gizlətmək və funksionallığı istifadəçiyə göstərməkdir. Abstraksiya abstrakt siniflər və interfeyslərdən istifadə etməklə əldə edilir. Mücərrəd metodun icrası yoxdur. Ən azı bir abstrakt metodu ehtiva edən sinfə abstrakt sinif deyilir.

İki mücərrəd sinif olduqda, həmin siniflərdə elan edilmiş metodlar həyata keçirilməlidir. Bu metodları həyata keçirmək üçün yeni bir sinif istifadə olunur. Hər iki sinifdə eyni metod olsaydı, bu, qeyri-müəyyənlik probleminə səbəb ola bilər. Buna görə də Java və C kimi proqramlaşdırma dillərinin interfeysi var.

İnterfeyslər yalnız metodların bəyannaməsini ehtiva edir. İcra üsulu yoxdur. Həmçinin, interfeyslər obyektlər yaratmaq üçün istifadə edilə bilməz. Onlar çoxsaylı mirasları dəstəkləmək və kodu qorumaq üçün istifadə olunur.

İnterfeys sintaksisi aşağıdakı kimidir. İnterfeys "interfeys" açar sözündən istifadə edir.

interfeys interfeysi_adı{

tip metod1(parametr_siyahısı);

tip metod2(parametr_siyahısı);

}

Yuxarıda göstərilənlərə əsasən, interfeyslərdə yalnız bəyannamə var. Heç bir tərif yoxdur. Beləliklə, interfeyslər obyektləri nümunələşdirə bilməz. O, yalnız interfeysin nə olduğuna dair mücərrəd bir görünüş verir. İnterfeysdə elan edilmiş metodlar bir və ya bir neçə sinif tərəfindən həyata keçirilə bilər. Sinif interfeysi həyata keçirmək üçün “tətbiq et” açar sözündən istifadə edir. Java istifadə edərək yazılmış nümunəyə baxın.

Sinif və İnterfeys Arasındakı Fərq
Sinif və İnterfeys Arasındakı Fərq
Sinif və İnterfeys Arasındakı Fərq
Sinif və İnterfeys Arasındakı Fərq

Şəkil 01: İnterfeyslərdən istifadə edən proqram

Yuxarıdakı proqrama əsasən, A və B interfeysdir. İnterfeys A sum() olan metod bəyannaməsinə malikdir. B interfeysi sub() metod bəyannaməsinə malikdir. C sinfi A və B olan hər iki interfeysi həyata keçirir. Buna görə də C sinfi həm sum() həm də sub() metodlarını müəyyən edir. C tipli obyekti yaratdıqdan sonra həm sum() həm də sub(). metodlarını çağırmaq mümkündür.

İnterfeys daxilində elan edilmiş metodlar həmişə açıq olmalıdır, çünki həyata keçirən siniflər onları müəyyən edir. İnterfeys başqa interfeysdən də miras qala bilər.

Sinf və İnterfeys arasında hansı oxşarlıqlar var?

  • Hər ikisi istinad növüdür.
  • Hər ikisi Obyektyönümlü Proqramlaşdırmaya aiddir.

Sinf və İnterfeys Arasındakı Fərq Nədir?

Sinif və İnterfeys

Klass obyekt yaratmaq üçün plan olan istinad növüdür. İnterfeys misallaşdırıla bilməyən istinad növüdür.
Obyektin Təxmini
Obyekti yaratmaq üçün sinif istifadə olunur. Metodlar heç bir əməliyyatı yerinə yetirə bilmədiyi üçün interfeys yaradıla bilməz.
Konstruktor
A sinfi dəyişənləri işə salmaq üçün konstruktordan ibarətdir. İnterfeysdə konstruktor yoxdur, çünki onlar demək olar ki, işə salınacaq dəyişənlər deyil.
Açar söz
Sinif “class” açar sözündən istifadə edir. İnterfeys "interfeys" açar sözündən istifadə edir.
Giriş Spesifikatoru
Sinifin üzvləri şəxsi, ictimai və qorunan ola bilər. İnterfeys üzvləri həmişə ictimai olmalıdır, çünki həyata keçirən siniflər onları müəyyən edir.

Xülasə – Sinif və İnterfeys

Siniflər və İnterfeyslər Obyekt yönümlü proqramlaşdırmada geniş istifadə olunur. Sinif və interfeys arasındakı fərq ondan ibarətdir ki, sinif obyekti yaratmaq üçün plan olan istinad növüdür və interfeys obyekti yaratmaq üçün istifadə edilə bilməyən bir istinad növüdür. Bir sinif bir çox interfeys tətbiq edə bilər. Ancaq o, yalnız bir superklass genişləndirə bilər. İnterfeysdə bir çox interfeys miras alına bilər, lakin həyata keçirilə bilməz. Hər ikisinin öz əhəmiyyəti var. Proqramçı onlardan proqram təminatına uyğun istifadə edə bilər.

PDF Sinifini və İnterfeysini endirin

Bu məqalənin PDF versiyasını yükləyə və sitat qeydinə əsasən onu oflayn məqsədlər üçün istifadə edə bilərsiniz. Zəhmət olmasa PDF versiyasını buradan endirin Sinif və İnterfeys Arasındakı Fərq

Tövsiyə: