PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : شیء چيست؟



S.A.H.A.N.D
22nd May 2011, 01:00 AM
با سلام [golrooz][golrooz][golrooz]


همانطور که گفتيم، با يک ديد تصويری به سادگی می توانيد اشياء مختلفی را در اطراف خود بيابيد. تمامی اين اشياء دارای سطوح و درجه پيچيدگی متفاوتی هستند. پيچيدگی آنها به شکل ظاهری و نوع رفتار آنها بستگی دارد.
در شیء گرايی به "شکل ظاهر" در اصطلاح، صفت يا Attribute و به عملی که شیء انجام می دهد، رفتار يا Behavior می گويند.
برای مثال يک صندلی را در نظر بگيريد. صندلی صفات مختلفی دارد ولی رفتار خاصی ندارد. مثلاً پايه های صندلی جزو صفات آن بشمار می روند. با کمی دقيق تر شدن می توان از اين صفات برای توصيف صندلی استفاده کرد. بعنوان مثال تعداد پايه های صندلی می تواند عددی بين 3 تا 5 باشد. محل نشستن صندلی می تواند جمله‌اي در وصف جنس آن و مقدار مصرف ماده سازنده آن باشد. پشتی صندلی را نيز می توان بعنوان متغييری boolean در نظر گرفت چراکه برخی از صندلی ها فاقد پشتی هستند. با استفاده از اين سه صفت ساده، به راحتی می توان صندلی را توصيف نمود و با همين سه صفت ميتوان گونه‌های مختلفی از صندلی را نيز توصيف کرد.
منظور از رفتار، عملی است که يک شیء انجام می دهد. از اينرو برای صندلی نمی توان به سادگی صفات آن، رفتاری را متصور شد. مثلاً مي‌توانيم بگوئيم تاشو بودن صندلی يکی از رفتارهای آن می تواند باشد، چراکه عملی است كه می تواند يک صندلی آنرا انجام دهد.
حال شیء ديگری مانند تلويزيون را در نظر بگيريد. صفاتی که می توان برای تلويزيون در نظر گرفت عبارتند از : صفحه نمايش، سازنده آن و ... برای تلويزيون به راحتی می توان رفتار در نظر گرفت : خاموش و روشن شدن، تغيير کانال و کم و زياد کردن صدا. اين رفتارها بر اثر درخواست يک انسان يا همان کاربر اتفاق می افتند. شیء تلويزيون را ميتوان بصورت زير نمايش داد :



http://www.noorportal.net/Javan/itlearn/HTMLData/CSharp/011.jpg
بطور کلی، يک شیء را ميتوان بوسيله صفات و رفتارهای آن بطور کامل توصيف نمود. يک شیء حتماً جسمی فيزيکی نيست، بلکه هر چيز قابل تصوری است که دارای صفت و رفتار است. در حقيقت ميتوان گفت يک شیء شبيه به يک اسم است. اگر بتوان برای اين اسم، صفت و رفتاری تعريف کرد، آن وقت تبديل به شیء می شود.
از ديد انتزاعی، زمان را نيز می توان بعنوان يک شیء در نظر گرفت. صفات زمان، ساعت، دقيقه و ثانيه هستند و گذشت زمان، رفتار آن است. در ايجاد شیء هيچ محدوديتی وجود ندارد و همه چيز به تخيل شما باز ميگردد.
در زبان C#، اشياء بوسيله کلاسها (Class) نمايش داده می شوند. داخل کلاس، صفات بصورت فيلدها ظاهر می شوند و جهت پياده سازی رفتارها از متدها استفاده می گردد.
به مثال زیر دقت کنید :
فرض کنید میخواهیم شی اتوموبیل را شبیه سازی کنیم. ابتدا خواص این شیء را بررسی میکنیم:
1- رنگ
2- حداکثر سرعت
3- شماره موتور
4- میزان مصرف بنزین
5- .....
حال به رفتارهای این شیء می پردازیم :
1- حرکت کردن به جلو
2- حرکت کردن به عقب
3- متوقف شدن
4- افزایش سرعت
5- ....
کپسوله سازی به ما این امکان را میدهد تا کلیه خصوصیات و رفتارهای فوق را در قالب یک موجودیت یا یک کپسول به نام اتوموبیل ذخیره کنیم.
برای این منظور ابتدا ساختاری به نام کلاس تعریف نموده و سپس ، ابتدا به ازای هر ویژگی یک متغیر متناسب با آن ویژگی تعریف مینماییم.بعد از آن به ازای هر رفتار ، یک متد یا تابع متناسب با آن رفتار ایجاد مینماییم
class Machine
{
//step 1 : Defining Status (Properties)
public string Color;
public int MaxSpeed;
public long MotorNumber;
public int GasAmount;
//stpe 2 : Defining Behavior (Methods)
public void MoveForward()
{
//implementation emitted
}
public void MoveBackward()
{
//implementation emitted
}
public void Stop()
{
//implementation emitted
}
public void IncreaseSpeed()
{
//implementation emitted
}
}

منبع (http://www.noorportal.net/javan/itlearn/show-437.aspx)

استفاده از تمامی مطالب سایت تنها با ذکر منبع آن به نام سایت علمی نخبگان جوان و ذکر آدرس سایت مجاز است

استفاده از نام و برند نخبگان جوان به هر نحو توسط سایر سایت ها ممنوع بوده و پیگرد قانونی دارد