life24 (11-08-15), SajjadKhati (25-07-15)
درود
خوب میدونیم که همه کلاس ها به طور پیش فرض از Object ارث بری می کنند.(به صورت ضمنی)
من یک کلاس می سازم با 100 تا فیلد و 500 تا متد.
حال من می تونم این کلاس رو راحت به Object تبدیل کنم!!
من متوجه نمی شوم چطور میشه؟ در دنیای واقعی مثل این میمونه که ما یک پارچ آب رو بریزیم در یک لیوان آب! آیا جا می شود؟ خیر! سر ریز می شود.
حالا عکس این امکان پذیر هست. یعنی باید بشه Object رو به کلاسی تبدیل کرد که 100 تا فیلد داره و 500 تا متد. مثل این بشه که یک لیوان آب رو بریزیم داخل یک پارچ آب!
که در زبان های برنامه نویسی مثل جاوا و سی شارپ نمیشه!!
اصلا در همان بحث کامپیوتری بحث حافظه Object چگونه هست؟
life24 (11-08-15), SajjadKhati (25-07-15)
من هیچ چی از قضیه ی ارث بری نمیدونم
تازه یه چیزایی از توابع داخل ++C رو تموم کردم و میخام برسم به آرایه ها . بعدشم استراکچر و اشاره گر ها و بعدشم کلاس ها
همه چی رو پیش پیش فهمیده باشم ، اما این کلاس ها رو متوجه نشدم. یکی نیست قشنگ بشکافه شی گرایی و کلاس چیه! برای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید
دانلود فیلم آموزش برنامه نویسی Visual Studio C#.Net
فیلم آموزش کامل Autoplay Media Studio
وقتی انسان ، حیوان هست ، پس قیمت میتونی براش بذاری ولی وقتی انسان حَیّ مُتِاَلِّه هست که قیمت نداره ، بها داره. "دکتر حسن عباسی"
با سلام!
کلاس یک مفهوم انتزاعیه که اشیا (Object) بر اساس اون شکل می گیرند. در این تعریف، فرآیند تبدیل کلاس به شی و یا بلعکس اصلا نمی گنجه.
فرض کنید که یه روز در اتاق تون نشسته اید و یک مفهوم میاد در ذهن تون. این مفهوم استوانه ای سفالی رو توصیف می کنه که یک قاعده ی اون بسته و قاعده ی دیگر اون باز هستش و برای اون یک دسته در وجه جانبی در نظر گرفته شده. کاربرد این مفهوم می تونه نوشیدن مایعات باشه. شما نام این مفهوم (Class) رو می ذارید لیوان (mug) . قاعدتا لیوان توصیف شده تا الان یک مفهوم بوده و تا زمانی که یک شی فیزیکی (Object) از اون ساخته نشه، نمیشه ازش برای آشامیدن مایعات استفاده کرد.
حالا شما میایید و مفهوم لیوان رو برای سه تا از دوستانتون به اسم های علی (Ali)، تقی (Taqi) و نقی (Naqi) شرح میدید. فرض می کنیم که هر سه دوست شما مفهوم لیوان (که Class محسوب میشه) رو می پسندند و هر یک مایل هستند یک لیوان واقعی (که Object محسوب میشه) رو داشته باشن. شما هم به اتفاق دوستان تشریف می برید نزد یک سفال گر (نقش کامپایلر رو داره) و با یک زبان (که همون زبان برنامه نویسیه) کلاس لیوان برای او توضیح می دهید تا سفال گر سه شی لیوان رو تولید کنه. در نهایت سه دوست شما می تونند به وسیله ی اشیا تولید شده مایعات رو نوش جان بفرمایند ولی شما همچنان با دونستن مفهوم این اشیا قادر به نوشیدن مایعات توسط اون نیستید.
حالا با این تفاسیر آیا تبدیل Object به Class حرف معنی داری هستش؟!کد:mug Ali; mug Taqi; mug Naqi;
'چو ایران نباشد، تن من مباد
Dim Armin As Iranian
If Iran.Enabled = False Then Armin.Enabled = False
AMD>INTEL (26-10-15), life24 (11-08-15), M A H R A D (04-08-15), nima_hl (03-08-15), SajjadKhati (03-08-15)
آقا من یه کم کلاس و شی گرایی رو تو #C پیگیری کردم اما بعضی تیکه هاش رو متوجه نشدم
اول اینکه شی دقیقا به کدوم قسمت میگن؟
مثلا من توی رویداد کلیک یه دکمه میخام از یه کلاس استفاده کنم. مثلا یه خاصیت (متغییر) شو میخام مقدار دهی کنم. توی این رویداد باید بنویسم (به فضای نام و کلاس اون رویداد کاری ندارم) :
بعد توی کلاس که با فضای نام Test و نام کلاس New ساخته شد :کد:using test; // // New Var = new New(); Var.Feature = 10;
سئوالاتم :کد:namespace Test { class New { public int Feature; } }
اول اینکه آیا به این متغییر Feature که توی کلاس New ایجاد شد ، میگن فیلد یا اون متغییری که توی قسمت رویداد اون دکمه ، باعث مقدار دهی اش شد؟ احتمالا متغییر داخل کلاس رو باید بگن فیلد؟ درسته؟ همونطور که تابع داخل کلاس رو میگن متد
دوم اینکه توی این کد که میگن آبجکت از کلاس بوجود میاد ، آبجکت به کدوم میگن؟ آیا یه اون متغییر Var که تو رویداد کلیک دکمه نوشته شد میگن آبجکت؟
کلمه ی کلیدی this که اشاره به همون کلاس میکنه ، آیا بجای این کلمه ی کلیدی ، میشه از اسم همون کلاس استتفاده کرد؟
بقیه ی سئوال رو یادم رفت برای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید
آخرین ویرایش توسط SajjadKhati در تاریخ 26-10-15 انجام شده است
دانلود فیلم آموزش برنامه نویسی Visual Studio C#.Net
فیلم آموزش کامل Autoplay Media Studio
وقتی انسان ، حیوان هست ، پس قیمت میتونی براش بذاری ولی وقتی انسان حَیّ مُتِاَلِّه هست که قیمت نداره ، بها داره. "دکتر حسن عباسی"
بعد اینکه کلاس ها باید توی name space تعریف بشن؟
من دقیق قضیه ی name space رو نفهمیدم . چرا اصلا باید name space ای وجود داشته باشه؟ این تعریفی که میگم درسته از name space؟ اینکه مثل کلاس ها که توابع و متدها توش دسته بندی میشن ، name space هم باعث دسته بندی کلاس ها میشه و انواع کلاس ها رو میشه توش قرار داد. درسته؟
دانلود فیلم آموزش برنامه نویسی Visual Studio C#.Net
فیلم آموزش کامل Autoplay Media Studio
وقتی انسان ، حیوان هست ، پس قیمت میتونی براش بذاری ولی وقتی انسان حَیّ مُتِاَلِّه هست که قیمت نداره ، بها داره. "دکتر حسن عباسی"
کسی نیست جواب بده؟
کلمه ی new دقیقا برای چی هه؟ مثلا چرا باید موقع فراخونی یه کلاس یا ایجاد یه آرایه از new استفاده کرد اما مثلا موقع تعریف متغییر نه؟
نوع آرگومان eventargs ها دقیقا چی ان توی متدهایی که برای رویداد مثلا رویداد click برای کنترل یه دکمه تعریف میشن؟ کارکردش مثل متد extention هست؟ کلا یه کم از کارکردش میخام بدونم
آخرین ویرایش توسط SajjadKhati در تاریخ 26-10-15 انجام شده است
دانلود فیلم آموزش برنامه نویسی Visual Studio C#.Net
فیلم آموزش کامل Autoplay Media Studio
وقتی انسان ، حیوان هست ، پس قیمت میتونی براش بذاری ولی وقتی انسان حَیّ مُتِاَلِّه هست که قیمت نداره ، بها داره. "دکتر حسن عباسی"
AMD>INTEL (26-10-15)
درباره ی فضای نام ها و متدهای مایکروسافت (مثلا فضای نام و متدهای مربوط به مدیریت فایل و یا مدیریت آهنگ و ...) که به کار آدم میاد بگین چجوری باید گیرشون بیاریم؟ طبعا نمیشه این فضای نام و متدها رو حفظ کرد . حداقل ما مبتدی ها نمیتونیم حفظ کنیم (سایتی چیزی)
دانلود فیلم آموزش برنامه نویسی Visual Studio C#.Net
فیلم آموزش کامل Autoplay Media Studio
وقتی انسان ، حیوان هست ، پس قیمت میتونی براش بذاری ولی وقتی انسان حَیّ مُتِاَلِّه هست که قیمت نداره ، بها داره. "دکتر حسن عباسی"
برای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید ارسالی توسط SajjadKhati برای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید
- همون که طور که خودت حدس زدی به متغییر Feature که توی کلاس New ایجاد شد میگن فیلد.
- همون طور که که خودت حدس زدی به اون متغییر Var که تو رویداد کلیک دکمه نوشته شد میگن آبجکت.
- نه نمیشه.
'چو ایران نباشد، تن من مباد
Dim Armin As Iranian
If Iran.Enabled = False Then Armin.Enabled = False
AMD>INTEL (31-10-15), SajjadKhati (31-10-15)
نه الزاما. تعریف کلاس بیرون فضای نام هم ممکنه. البته در برخی از انواع پروژه نظیر Windows Form این کار شاید مشکل ساز بشه.برای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید ارسالی توسط SajjadKhati برای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید
تعریفی که از فضای نام ارایه کردی درسته. فضای نام به کد سر و سامان می بخشه.
آخرین ویرایش توسط ravegoat در تاریخ 31-10-15 انجام شده است علت: افزودن تبصره
'چو ایران نباشد، تن من مباد
Dim Armin As Iranian
If Iran.Enabled = False Then Armin.Enabled = False
AMD>INTEL (31-10-15), SajjadKhati (31-10-15)
ممنون گلپسر آرمین
یه سئوال دیگه دارم
Unmanaged Exports در #C چیه؟
چجوری میتونم کدهامو به این روش خروجی بگیرم؟
من مبتدی هستم ها
برای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید
دانلود فیلم آموزش برنامه نویسی Visual Studio C#.Net
فیلم آموزش کامل Autoplay Media Studio
وقتی انسان ، حیوان هست ، پس قیمت میتونی براش بذاری ولی وقتی انسان حَیّ مُتِاَلِّه هست که قیمت نداره ، بها داره. "دکتر حسن عباسی"
1 کاربر در حال مشاهده این موضوع. (0 عضو و 1 میهمان)
Bookmarks