جناب رضوی روشتان کاملا غلط است !!!
یکی از بزرگترین ایراد اون اینه که در دفعات بعدی نمونه گیری، null بر میگردونه (به قول خودتون و با توجه به کدتون)

null برگردوندن ف میتونه بسیار خطرناک باشه و 100 درصد با توجه به کدی که شما نوشتین برنامتون crash خواهد شد
الان دات نت ندارم ولی اگه خواستین تا با نمونه کد نشون بدم که چگونه ممکنه برنامه با توجه به روش شما کنفیکون بشه
همانطور که جناب آرژنگ هم اشاره کردند روش درست سینگلتن همینه که ایشون گفتند نه اونی که جنابعالی دادین !!!



TestClass t1= TestClass.GetInstance(); یک نمونه از کلاس را می سازد
TestClass t2= TestClass.GetInstance(); بازهم یک نمونه از کلاس را می سازد


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




if(t1==t1)
// the Instances Are the Same



خواهید دید که شرط فوق درست است به این معنی که تا اشاره گری به کلاس وئجود داشته باشه همون برگشت داده میشه و در غیر اینصورت اشاره گر جدیدی ساخته خواهد شد.

البته درمورد سینگلتن به مراتب توی سایت گفته شده و جناب arash ahmadi بایستی در پست شماره 2 جواب خود را گرفته باشند و خودشان به این الگو و نحوه استفاده از آن پی برده باشند
موفق باشید