PDA

View Full Version : سوال: Enum&override



AliSoft
یک شنبه 13 اردیبهشت 1388, 14:33 عصر
چگونه استفاده کردن از Enum.
overridre,oveload در C# یعنی چی

java_nith
یک شنبه 13 اردیبهشت 1388, 15:24 عصر
البته این رو من از Java می‌دونم،
overridre
یعنی‌ اینکه Metode / Function از یه جای دیگه / از یه کلاس دیگه ارث میبره
ولی‌ شما در خود اون کلاس Metode / Function رو توضیح دادید،

مثلا اینکه یه متد است به اسم toString()، که کلاس‌ها به ارث میبرن
اگه تغیرش ندید که همون که کلاس‌های بالا توضیح دادن می‌شه
اگه خودتون یدونه تو کلاس خودتون درست کنید اون
کاری رو انجام میده که شما گفتید و نه کلاس بالا
این می‌شه Overrider


Enum
اونرو خوندم ولی‌ هنوز آنقدر بلد نیستم که توضیح بدم
میزارم به عهدهٔ دوستان بعدی

NewFoxStudent
یک شنبه 13 اردیبهشت 1388, 17:18 عصر
enum ابزاری برای دسته بندی مقادیر عددی با نام
به صورت یه پوسته عمل میکنه که چند مقدار رو از نوع عدد و با مقادیر و نامهای مختلف داخل خودش داره
به عنوان مثال MessageBoxButtons یک enum که مقادیر دکمه های MessageBox رو داخل خودش داره
و برنامه نویس میتونه enum های خاص خودش رو هم تعریف کنه مثل این نمونه


public enum ConnectionAction { Open, Close, Reastart };


override در لغت به معنی باطل کردنه
در C# توی کلاسهای فرزند میتونید متدها و خاصیتهای کلاس والد رو با همون نام و با ساختار و عملکرد جدید به وسیله override مجدداً تعریف کنید

به عنوان مثال


public override string ToString()
{
return base.ToString();
}

java_nith
یک شنبه 13 اردیبهشت 1388, 17:44 عصر
می‌شه در مورد ENUM
یکمی بیشتر توضیح بدید؟
اگه می‌شه یه مثال دیگه بزنید
منم دوست دارم بیشتر یاد بگیرم :=)

NewFoxStudent
سه شنبه 15 اردیبهشت 1388, 14:30 عصر
فرض کنید یه تابع نوشتید که کارش مشخص کردن اینه که فرضاً در حال حاضر فلش درایو به کامپوتر وصل هست یا نه
این تابع سه حالت رو برمیگردونه
1- وجود فلش
2- عدم وجود فلش
3- نامشخص بودن نتیجه

برای مقدار بازگشتی این تابع میتونید از عدد استفاده کنید یعنی فرضاً
وجود برابر 1
عدم وجود برابر 2
نامشخص برابر 3

یا میتونید برای مقدار بازگشتی این تابع یک enum تعریف کنید


public enum TestResult{Exist,Notexist,Unknow},

این ساده ترین حالت استفاده از enum بود که به ذهنم رسید

java_nith
سه شنبه 15 اردیبهشت 1388, 18:47 عصر
مثال خوبی‌ بود مرسی‌

ولی‌ یک سوال
پس اگه اینجوری باشه شما باید در کلاس فایل ENUM رو import کنید؟ درسته؟
و چجوری یه فایل enum می‌شه ساخت؟
یعنی‌ شما یه اسم بهش میدید و یه عدد؟

چجوری در فایل انوم میگید
وجود = ۱؟

NewFoxStudent
سه شنبه 15 اردیبهشت 1388, 19:04 عصر
enum فایل نیست

مقادیر هم به صورت اتوماتیک از 0 شروع میشه ولی اگه بخواهید مقادیر دیگه ای داشته باشه میتونید اعلام کنید

مثال


public enum test{ a=2, b = 5, c=6, d };



The enum keyword is used to declare an enumeration, a distinct type that consists of a set of named constants called the enumerator list.

Usually it is best to define an enum directly within a namespace so that all classes in the namespace can access it with equal convenience. However, an enum can also be nested within a class or struct.

By default, the first enumerator has the value 0, and the value of each successive enumerator is increased by 1. For example:

Copy Code
enum Days {Sat, Sun, Mon, Tue, Wed, Thu, Fri};


In this enumeration, Sat is 0, Sun is 1, Mon is 2, and so forth. Enumerators can have initializers to override the default values. For

java_nith
سه شنبه 15 اردیبهشت 1388, 19:53 عصر
مرسی‌ دوست عزیز
الان توی جاوا سعی‌ می‌کنم درستش کنم

بازم مرسی‌