PDA

View Full Version : مبتدی: "کلاس" و "متد" در برنامه سازی چی هستند؟



phpphp7
یک شنبه 07 دی 1393, 20:49 عصر
سلام دوستان

من رشتم کامپیوتر نرم افزار هست اما اصلا نمیتونم مبحث کلاس و متد رو درک کنم

اصلا شی گرا ، کلاس و متد رو درک نمی کنم !

کسی از دوستان میتونم منو راهنمایی کنه ؟

erfan_urchin
یک شنبه 07 دی 1393, 23:54 عصر
شما فرض کن یه جعبه کمکهای اولیه داری که خب قاعدتا توی این جعبه شما وسایل موردنیاز مثل بتادین، باند، چسب زخم، قرص استامینوفن و غیره داری
و هرکدوم از اینها کاری میکنن. مثلا قرص استامینوفن برای پایین آوردن تب انسان، بتادین برای التیام زخم های عمیق و بقیه هم به همین ترتیب برای کاری استفاده میشه
توی این مثال جعبه کمک های اولیه کلاس و ابزار درون آن (که هر کدوم یه کاربردی دارن) متد نامیده میشه
مثلا شما توی #C از کلاس Math اعمال ریاضی خودت رو با استفاده از متدهاش میتونی محاسبه کنی مثل محاسبه سینوس، کسینوس و ...
یعنی مثلا شما بنویسی (9)Math.Sqrt میاد جذر عدد 9 رو برای شما محاسبه میکنه که تو این مثال Math کلاس، و Sqrt متد هستش
به طور کلی بخوام بهت بگم اینجوریه که ما توی این کد به سی شارپ داریم میگیم برو از داخل کلاس Math متدی که جذر اعداد رو محاسبه میکنه رو صدا بزن (یعنی متد Sqrt) و بهش بگو جذر عدد 9 رو حساب کنه.
و اما مفهوم شی گرایی :لبخند:
شما در اکثر کلاس ها باید ازشون شی بسازی تا بتونی به متدهاش دسترسی پیدا کنی یعنی همه کلاس ها مثل Math نیستن که راحت به متدهاش دسترسی پیدا کنی و اغلب باید ازشون شی بسازی
مثلا کلاس Bitmap باید ازش شی بسازی تا به متدهاش دسترسی پیدا میکنی
Bitmap bm = new Bitmap(@"D:\a.jpg");
bm.MakeTransparent();

این شی هایی که از کلاس میسازی باعث میشه به متدهای اون کلاس دسترسی داشته باشی
من الان با شی ای که ساختم و اسمش رو گذاشتم bm ، تونستم به متدهای کلاس Bitmap دسترسی داشته باشم
به این برنامه ها مثل #C که با استفاده از شی هایی که میسازی میتونی به متدها دسترسی پیدا کنی برنامه های شی گرا میگن
امیدوارم توضیحاتم کافی بوده باشه
موفق باشی