رفتن به مطلب
  • 0

کلاسی که فقط یک بار قابلیت تعریف داشته باشد


peyman128

سوال

سلام

دوستان می خواستم بپرسم چه طور میشه که کلاسی نوشت که فقط و فقط یک بار قابلیت تعریف داشته باشه و اگر قرار بود یک بار دیگه تعریف بشه، بهش اجازه داده نشه؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

3 پاسخ به این سوال تاکنون داده شده است

ارسال‌های توصیه شده

در 9 ساعت قبل، peyman128 گفته است :

سلام

دوستان می خواستم بپرسم چه طور میشه که کلاسی نوشت که فقط و فقط یک بار قابلیت تعریف داشته باشه و اگر قرار بود یک بار دیگه تعریف بشه، بهش اجازه داده نشه؟

کلاستون رو به شکل زیر تعریف کنید.

public class Test {
    private static Test instance;
    private Test(){
        if (instance!=null){
            throw new IllegalStateException("Cannot create instances You've done it before!!!");
        }
    }
    public static Test getInstance() {
        synchronized (Test.class){
            if (instance==null){
                return new Test();
            }else {
                return instance;
            } 
        }
    }
}

به شکل زیر هم میتونید از کلاس نمونه بسازید که فقط یک بار این کار رو میشه کرد دفعه دوم برنامه فورس میشه.

  Test test= Test.getInstance();

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 9 ساعت قبل، peyman128 گفته است :

سلام

دوستان می خواستم بپرسم چه طور میشه که کلاسی نوشت که فقط و فقط یک بار قابلیت تعریف داشته باشه و اگر قرار بود یک بار دیگه تعریف بشه، بهش اجازه داده نشه؟

میتونید با این روش کار کنید ولی نمیدونم استاندارد هست یانه...

به این صورت که وقتی کلاس رو تعریف کردید یه فایل بسازید بعد هر موقع که اکتیویتی اجرا شد چک کنید که اگر فایل وجود داشته باشه کلاس رو تعریف نکنه و اگر فایل وجود نداشت کلاس رو تعریف کنه

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...