با عرض سلام خدمت کاربران محترم سایت پی وی لرن.
با جلسه ای دیگر از سری جلسات دوره آموزش زبان برنامه نویسی دارت Dart در خدمت شما هستیم.
در این جلسه قصد داریم به آموزش رابط ها در زبان دارت (Interfaces) بپردازیم.
رابط ها Interface ، مجموعه ای از متد های موجود در یک شئ را تعریف میکند.
در سایر زبان های شئ گرا، رابط ها موجودیت و نوع داده جداگانه ای هستند اما در زبان دارت هر کلاسی میتواند رابط باشد.
در واقع رابط ها به صورت ضمنی پیاده ساز میشوند.
برای پیاده سازی یک رابط توسط یک کلاس از کلمه کلیدی implements استفاده میکنیم.
ابتدا نام کلاس، کلمه کلیدی implements و سپس نام رابط.
گرامر:
1 | class identifier implements interface_name |
در مثال زیر ما دو کلاس را تعریف کرده ایم. کلاس های Print و ConsolePrinter.
کلاس ConsolePrinter، کلاس Print را به صورت یک رابط پیاده سازی میکند.
در تابع main نیز یک شئ از کلاس ConsolePrinter ایجاد کرده ایم که با استفاده از آن متد print_data را فراخوانی کرده ایم.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | void main() { ConsolePrinter cp= new ConsolePrinter(); cp.print_data(); } class Printer { void print_data() { print("__________Printing Data__________"); } } class ConsolePrinter implements Printer { void print_data() { print("__________Printing to Console__________"); } } |
خروجی:
1 | __________Printing to Console__________ |
یک کلاس میتواند چندین رابط را پیاده سازی کند.
برای این کار کافیست تا رابط ها را با کاما , از یکدیگر جدا کنید.
گرامر:
1 | class identifier implements interface-1,interface_2,interface_4……. |
مثال:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | void main() { Calculator c = new Calculator(); print("The gross total : ${c.ret_tot()}"); print("Discount :${c.ret_dis()}"); } class Calculate_Total { int ret_tot() {} } class Calculate_Discount { int ret_dis() {} } class Calculator implements Calculate_Total,Calculate_Discount { int ret_tot() { return 1000; } int ret_dis() { return 50; } } |
خروجی:
1 2 | The gross total: 1000 Discount:50 |
جلسه آموزش رابط ها در زبان دارت نیز به پایان رسید.
در جلسه بعد به آموزش مدیریت استثنا در زبان دارت Dart خواهیم پرداخت.