مشکل on در mixin

پرسیده شده
فعالیت 941 روز پیش
دیده شده 460 بار
0

سلام استاد، خسته نباشید

 

در رابطه با کلیدواژه on در mixin به مشکل خوردم، ممنون میشم تصویر پیوست رو مشاهده کنید راهنمایی کنید ایراد کار کجاست

 

تشکر :)

 

 

فایل پیوست

نیما
نیما

4 مهر 00

4
حذف شده

خسته نباشی دوست عزیز.

کلیدواژه on با توجه به کد شما به این معنا است که تمام کلاس هایی که از car ارث بری میکنند میتونند از  catMixin استفاده کنند. شما که از کلاس car نمونه سازی کردید، دقت کنید که خود کلاس car از کلاس car ارث بری نکرده که به خاطر همین با ارور مواجه شدید. اگر یک کلاس دیگه تعریف کنید و اون هم از کلاس car ارث بری کنه میتونید از on استفاده کنید.

 

یه مثال واستون زدم:

 

void main(List<String> arguments) {
  SecondCar secondCar=SecondCar();
  secondCar.start();
}

  class Car {}
  
  //در این کلاس میتونیم از mixin استفاده کنیم چون از کلاس car ارث بری کردیم
  class SecondCar extends Car with CatMixin{} //درست
  
  //در کلاس SportCar نمیتوانیم از mixin استفاده کنیم چون از کلاس car ارث بری نکرده است.
  class SportCar with CatMixin{} //غلط
  
  mixin CatMixin on Car{
  void start(){
  print('Start..');
  }
  }



فایل پیوست

آقای سلطانی

توسط

آقای سلطانی

5 مهر 00