PDA

View Full Version : کلاسهاي Static



zkazemi
شنبه 17 مرداد 1388, 09:05 صبح
ويژگي‌ ديگر زبان C# قابليت تعريف کلاس بصورت Static مي‌باشد. کلاسهاي static مي‌توانند فقط شامل اعضاي Static باشند و هر نمونه‌اي که از يک کلاس Static تعريف با يک کپي از اعضاي آن کار مي‌کند. هدف استفاده از کلاسهاي Static اين است که اين کلاسها يک محلي براي ذخيره‌سازي متدها و فيلدهاي کاربردي باشند.
Static Class نمي‌توانند شامل اطلاعات و متدهايي باشد که توسط نمونه‌ها خوانده و استفاده گردند لذا معني نمي‌دهد که بوسيله کلمه کليدي new اقدام به ساخت يک نمونه از يک کلاس static نمائيم.
اگر شما قصد مقداردهي يک کلاس Static را داشته باشيد, کلاسهاي static شامل يک Constructor پيش فرض هستند که آن هم بصورت static تعريف گرديده است. استفاده و تعريف هر Constructor ديگري غير مجاز بوده و کامپايلر error برگشت خواهد داد.
چنانچه نسخه دلخواه کلاس Math خود را تعريف کرده بوديد که تنها شامل اعضاي static بود, کلاس مذکور, به شکل زير درمي‌آمد:


public static class Math
{
public static Double sin (double x) {…}
public static Double cos (double x) {…}
public static Double sqrt (double x) {…}

}