دانلود نرم افزار - آموزش سی شارپ
دانلود نرم افزار - آموزش سی شارپ

دانلود نرم افزار - آموزش سی شارپ

محتویات یک کلاس در سی شارپ

محتویات یک کلاس در سی شارپ :

یک کلاس می تواند دارای هر کدام از 14 مورد زیر باشد که بعضی ضروری و برخی اختیاری یک کلاس می باشند .

1 . Constructors                                  سازنده ها

2 . Constants                                      ثابت ها

3 . Fields                                            فیلدها  ( متغیرها )

4 . Finalizers ( Destructors )       نهایی کننده ها یا ( مخرب ها )

5 . Methods                                       روش ها

6 . Properties                                     ویژگی ها

7 . Indexers                                        ایندکسرها

8 . Operators                                     عملگرها

9 . Events                                           رویدادها

10 . Delegates                                    نمایندگان

11 . Classes                                        کلاس ها

12 . Interfaces                                   رابط ها

13 . Structs                                        ساختارها

14 . Enumerations                       نوع شمارشی

کلاس استاتیک static class

در این بخش به یک کلاس استاتیک می پردازیم کلاس استاتیک کلاسی است که اولا همه اعضاء آن باید استاتیک باشند ثانیا برای دسترسی به اعضاء یک کلاس استاتیک لازم نیست تا یک نمونه از آن کلاس ساخته شود بلکه فقط به کمک نوشتن نام کلاس و پس از آن عملگر نقطه به تمام اعضاء کلاس دسترسی پیدا می کنیم در ادامه متن کامل یک کلاس استاتیک به همراه نحوه کاربرد آن آمده

using System;

namespace StaticClassTest {   

static class MathFunction

{   //معکوس عدد را برمی گرداند

static public double reciprocal(double num) {    return 1 / num;    }

//قسمت اعشاری عدد را برمی گرداند

static public double fracPart(double num) {    return num - (int)num;  }

//اعداد زوج را برمی گرداند

static public bool isEven(double num) {   return (num % 2) == 0 ? true : false; }

//اعداد فرد را برمی گرداند

static public bool isOdd(double num) {    return !isEven(num);  } }

class MainClass {  

public static void Main()

Console.WriteLine("Reciprocal of 5 is " + MathFunction.reciprocal(5.0));    

Console.WriteLine("Fractional part of 4.234 is " + MathFunction.fracPart(4.234));      

if (MathFunction.isEven(10))         Console.WriteLine("10 is even.");     

if (MathFunction.isOdd(5))           Console.WriteLine("5 is odd.");     

Console.ReadLine();  } } }

کلاس - Class

کلاس : Class

 کلاس مفهومی شبیه نقشه یک ساختمان دارد که خود به تنهایی مثلا قابل سکونت نیست بلکه بایستی یک نمونه ( ساختمان ) از روی آن ساخت و از آن نمونه ساخته شده استفاده کرد.یعنی در واقع کلاس یک  Concept  از شیء ایست که می خواهیم داشته باشیم .

یک کلاس  دارای اعضائی است که این اعضاء به دو دسته تقسیم می شوند 1 . داده ها و 2 . عملکردها .

داده ها شامل فیلدها ( Fields) و خصوصیات ( properties ) و عملکردها نیز شامل رویدادها ( Events ) و متدها ( methods ) می باشند.

کلاس { فیلدها و خصوصیات - رویدادها و عملکردها }

یک کلاس با استفاده از کلید واژه class و به دنبال آن نامی برای کلاس و دو علامت { } تعریف می شود .

در مثال زیر کلاسی به نام MyClass  تعریف شده که هیچ عضوی ندارد و در واقع هیچ کاری هم انجام نمی دهد.

class MyClass
{
    
}

همانطور که در بالا بیان شد کلاس دارای اعضایی است . قبل از اضافه کردن اعضاء درون کلاس به این نکته توجه داشته باشید که هر کلاس برای اجرا شدن حتماً به یک سازنده ( constructor) احتیاج دارد وگرنه کلاس ما بدون انجام هیچ واکنشی بدون استفاده باقی می ماند. یک سازنده بوسیله تعیین یک سطح دسترسی و نامی دقیقا مشابه نام کلاس و علامت () تعریف می گردد که می تواند دارای پارامتر و یا بدون پارامتر باشد.( در مثال زیر سازنده کلاس MyClass هیچ پارامتری دریافت نمی کند. ضمنا این Constructor بطور اتومتیک اجرا می شود )

نکته : سازنده کلاس می تواند پس از ساخت یک نمونه از کلاس نیز بطور دستی اجرا گردد که در ادامه  به آن اشاره خواهد شد .

class MyClass
{
   public MyClass()
    {

    }
}

دقت کنید : همانطور که در بالا بیان شد برای دسترسی به اعضاء یک کلاس و استفاده از عملکردهای آن می بایست ابتدا یک نمونه یا شیء( Object ) از آن کلاس را ساخت و سپس به کمک آن شیء به اعضاء کلاس دسترسی پیدا کرد.

using System;
namespace ClassTest
{
    class Program
    {
        class MyClass
        {
            int nonStaticVariable;
            static int staticVariable;
            public void SetVars(int v1, int v2)
            {
                nonStaticVariable = v1;
                staticVariable = v2;
            }
            public void Display()
            {
              Console.WriteLine("nonStaticVariable = {0}  staticVariable = {1}", nonStaticVariable, staticVariable);
              Console.ReadKey();
            }
        }
            static void Main()
            {
                MyClass d1 = new MyClass();
                MyClass d2 = new MyClass();
                d1.SetVars(2, 4);
                d1.Display();
                d2.SetVars(15, 17);
                d2.Display();                 }       }       }

همانطور که می بینید در اینجا دو نمونه از کلاس به نام های d1  و  d2 ساخته شده که به آنها مقدارهای متفاوتی داده شده .

که پس از اجرا ابتدا شیء d1  و سپس با زدن اینتر شیء  d2  اجرا می شوند. خروجی برنامه بصورت زیر می باشد.

nonStaticVariable = 2          staticVariable = 4

nonStaticVariable = 15          staticVariable = 17