موضوعات وبسایت : برنامه نویسی
سوالات امتحان آیین نامه رانندگی

Object در سی شارپ

Object در سی شارپ

نویسنده : محمد پارسایی | زمان انتشار : 28 بهمن 1400 ساعت 01:49

جهت انجام پروژه های دانشجویی و یا تمرین‌های برنامه نویسی رشته کامپیوتر میتوانید به آی دی تلگرام زیر پیام دهید

@AlirezaSepand



سوالات امتحان آیین نامه رانندگی

با استفاده از قاعده نوشتاری Object Initializer در سی شارپ میتوان فیلد ها و پروپرتی های یک کلاس را در زمان ایجاد یک شی از آن مقدار دهی اولیه کرد. در این فصل با این قاعده نوشتاری آشنا خواهیم شد.


Object Initializer

سی شارپ از نسخه سه به بعد قاعده نوشتاری Object Initializer را معرفی کرد. با استفاده از این قاعده نوشتاری می توان یک شی از یک کلاس و یا کالکشن را در زمان نمونه‌سازی، مقداردهی اولیه کرد. این قاعده نوشتاری به شما اجازه می دهد که مقادیر فیلد ها و پروپرتی ها را در زمان ایجاد شی بدون فراخوانی سازنده، مقداردهی اولیه کنید:

public class Student
{
    public int StudentID { get; set; }
    public string StudentName { get; set; }
    public int Age { get; set; }
    public string Address { get; set; }
}

class Program
{
    static void Main(string[] args)
    {
        Student std = new Student() { StudentID = 1, 
                                      StudentName = "Bill", 
                                      Age = 20, 
                                      Address = "New York"   
                                    };
    }
}

 در نمونه مثال بالا کلاس Student بدون سازنده تعریف شده است. در متد main ما شی ایی از Student را ایجاد و مقادیری را برای پروپرتی های آن در نظر گرفته ایم. به این روش مقدار دهی اولیه، object initializer گفته می شود. کامپایلر چنین مقداردهی را به شکل زیر کامپایل خواهد کرد :

Student __student = new Student();
__student.StudentID = 1;
__student.StudentName = "Bill";
__student.Age = 20;
__student.StandardID = 10;
__student.Address = "Test";

Student std = __student;

مقدار دهی اولیه برای کالکشن ها

مقدار دهی اولیه برای کالکشن ها به همان روشی که برای اشیای یک کلاس استفاده می‌شد، انجام می شود :

var student1 = new Student() { StudentID = 1, StudentName = "John" };
var student2 = new Student() { StudentID = 2, StudentName = "Steve" };
var student3 = new Student() { StudentID = 3, StudentName = "Bill" } ;
var student4 = new Student() { StudentID = 3, StudentName = "Bill" };
var student5 = new Student() { StudentID = 5, StudentName = "Ron" };

IList<Student> studentList = new List<Student>() { 
                                                    student1, 
                                                    student2, 
                                                    student3, 
                                                    student4, 
                                                    student5 
                                                };

شما همچنین می توانید کالکشن ها و اشیا را در یک زمان مقدار دهی اولیه کنید :

IList<Student> studentList = new List<Student>() { 
                    new Student() { StudentID = 1, StudentName = "John"} ,
                    new Student() { StudentID = 2, StudentName = "Steve"} ,
                    new Student() { StudentID = 3, StudentName = "Bill"} ,
                    new Student() { StudentID = 3, StudentName = "Bill"} ,
                    new Student() { StudentID = 4, StudentName = "Ram" } ,
                    new Student() { StudentID = 5, StudentName = "Ron" } 
                };

همچنین می توان از مقدار null به عنوان یک عنصر برای مقداردهی استفاده کرد :

IList<Student> studentList = new List<Student>() { 
                                    new Student() { StudentID = 1, StudentName = "John"} ,
                                    null
                                };

آیا این مطلب برای شما مفید بود؟


منبع: learnsource.net



ارسال نظر

نام


ایمیل


نظر