ورود

View Full Version : EnumSet چیست؟



pegetive_2010
یک شنبه 15 فروردین 1389, 19:15 عصر
سلام.من یه اطلاعاتی در مورد enumeration دارم ولی فرقش رو با enum ها نمیدونم...چه تفاوت و مزیت هایی داره؟
ممنونم

javanerd
یک شنبه 15 فروردین 1389, 21:46 عصر
اگر منظور شما از enumeration همون واسط java.util.Enumeration هست که فرقشون که خیلی زیاده.

Enumeration‌ یک کلاس (دقیقتر یک interface) هست که از همون نسخه‌ی یک با جاوا بوده. کلاس‌هایی که این واسط رو پیاده‌سازی می‌کنند یه تعداد عنصر رو به صورت ترتیبی در اختیار شما قرار می‌دهند.

ولی enum یک کلمه کلیدی هست که از نسخه‌ی ۵ جاوا (Java 1.5) اضافه شد. از نسخه‌ی ۵ به بعد شما می‌تونید در برنامه‌های جاوا یک یا چند class یا interface و یا enum در هر فایل جاوا تعریف کنید.
من نمی‌دونم اطلاعات شما در مورد enumeration چقدر هست تا بیشتر شما رو راهنمایی کنم. ولی به طور کلی هر کدوم از این مفاهیم برای یک منظور طراحی شده‌اند و هر کدام ماموریت خاصی رو باید در برنامه‌ها انجام بدهند.
مقایسه کردن این دو تا از خیلی جنبه‌ها شاید کار درستی نباشه. ولی کلا یکی از جاهایی که میشه از یک enum استفاده کرد و از یک کلاس که یک enumeration رو پیاده‌سازی کرده نمیشه استفاده کرد، دستور switch هست.

می‌دونم که خیلی پراکنده حرف زدم و شاید از این پست چیز زیادی دستگیر شما نشه، ولی اگر می‌دونستم که شما در مورد enumeration چی می‌دونید شاید بیشتر می‌تونستم کمک کنم.