نمایش نتایج 1 تا 3 از 3

نام تاپیک: مشکل در تعریف کلاس

  1. #1

    مشکل در تعریف کلاس



    ILicenseInfo info = new licenseClass();


    پیاده سازی اینترفیس توسط کلاس مشخصه یعنی اینکه متدهای اینترفیس باید در کلاس باشه اما کد بالا چه معنی داره؟ یعنی اینکه کلاسی میسازیم که متدهای اینترفیس رو داشته باشه؟

  2. #2

    نقل قول: مشکل در تعریف کلاس

    سلام
    چیزی که باید در نظر داشته باشید اینه که استفاده از اینترفیس در این مورد فرقی با استفاده از یک کلاس نداره، به این مفهوم که یک ابجکت از نوع یک کلاس میتونه توسط تمام کلاس های فرزند اون کلاس instantiate بشه. حجم مموری که این ابجکت میگیره به اندازه ی سایز کلاس فرزنده ولی شما فقط به متد ها و متغیر های کلاس والد دسترسی دارید. پیشنهاد میکنم یه مقدار در مورد اینترفیس ها در #c و همینطور مفهوم ارث بری در زبان های شی گرا مطالعه کنید.

  3. #3
    VIP آواتار gwbasic
    تاریخ عضویت
    اردیبهشت 1403
    محل زندگی
    تهران
    سن
    42
    پست
    982

    نقل قول: مشکل در تعریف کلاس

    کد بالا یعنی شما یک شی از کلاس licenseClass‌ ساخته اید. این شی مطمئنا شامل تمام خصوصیات این کلاس می شود چون از جنس این کلاس می باشد. اما وقتی این شی را به متغیر info که از جنس ILicenseInfo هست نسبت می دهید. شما فقط به اعضایی (شامل خصوصیات و متدها و .. ) از این شی دسترسی دارید که در interface معرفی کردی اید. در اصل شما از زاویه دید interface به شی نگاه می کنید. دقت کنید که ماهیت شی از جنس کلاستان هست و تغییری نمی کنید.

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •