מה חדש ב-C# 6: אתחול משתנים ב-Class

אחת האפשרויות החדשות ב- C# 6 היא כתיבה מקוצרת של אתחול משתנים ב- Class. 

אם למשל בעבר היינו צריכים להגדיר Constructor ל- Class על מנת שיאתחל את המאפיינים (Properties) שלו כאשר יוצרים אובייקט חדש (Instance) של ה- Class, אז החל מ- C# 6 אין בכך צורך וניתן לאתחל את המאפיין כבר בשורה של ההגדרה.

 

לדוגמא, נראה את הקוד הבא, שהוא בעצם הגדרה של Class בשם Person ומכיל 2 מאפיינים (Properties) שהם לא ניתנים לשינוי לאחר יצירת האובייקט והם מאותחלים על ידי ה- Constructor של ה- Class:

public class Person
{
    public int Age { get; }
    public string Name { get; }

    public Person()
    {
        Age = 30;
        Name = "David";
    }
}

 

 

  

  

ובדוגמא הבאה נראה קוד ב- C# 6 שעושה זאת ללא ה- Constructor:

public class Person
{
    public int Age { get; } = 30;
    public string Name { get; } = "David";
}

  

 

שימו לב שהערכים שאנו מגדירים לא חייבים להיות קבועים ויש גם אפשרות להשתמש בפונקציות שונות על מנת להגדיר את המאפיינים. למשל, בדוגמא הבאה אני אגדיר את המאפיין Age שיהיה מספר רנדומלי (עד 120)

public class Person
{
    public int Age { get; } = new Random().Next(120);
    public string Name { get; } = "David";
}

 

 

 

תגיות:

הוסף תגובה