irpersian20
پنج شنبه 23 مرداد 1393, 19:25 عصر
سلام
من در چند مثال دیدم برای فراخوانی Dispose این طوری عمل شده
((IDisposable)c).Dispose();
C هم نام کلاسمون بوده و c هم یک شی از اون هست.
حالا سوال اینجاست. Interface سراسر تعریف متد هست بدون کد.
الان این به صورت صریح به IDisposable تبدیل شده و Dispose فراخوانی شده. این Dispose که هیچ پیاده سازی ازش انجام ندادیم. چطور کار میکنه و منابع رو میتونه آزاد کنه؟
اصلا فرضا Dispose جمع 2 تا عدد رو انجام بده! اما تبدیل شده به اینترفیس و این متد داخل اون اینترفیس هست و اینترفیس هم یک مشت متد بدون تعریف . چطور کار امجام میده؟
من در چند مثال دیدم برای فراخوانی Dispose این طوری عمل شده
((IDisposable)c).Dispose();
C هم نام کلاسمون بوده و c هم یک شی از اون هست.
حالا سوال اینجاست. Interface سراسر تعریف متد هست بدون کد.
الان این به صورت صریح به IDisposable تبدیل شده و Dispose فراخوانی شده. این Dispose که هیچ پیاده سازی ازش انجام ندادیم. چطور کار میکنه و منابع رو میتونه آزاد کنه؟
اصلا فرضا Dispose جمع 2 تا عدد رو انجام بده! اما تبدیل شده به اینترفیس و این متد داخل اون اینترفیس هست و اینترفیس هم یک مشت متد بدون تعریف . چطور کار امجام میده؟