Copy Constructor tạo một đối tượng bằng cách sao chép các biến từ một đối tượng khác.
Hãy để chúng tôi xem một ví dụ -
Ví dụ
using System; namespace Demo { class Student { private string name; private int rank; public Student(Student s) { name = s.name; rank = s.rank; } public Student(string name, int rank) { this.name = name; this.rank = rank; } public string Display { get { return " Student " + name +" got Rank "+ rank.ToString(); } } } class StudentInfo { static void Main() { Student s1 = new Student("Jack", 2); // copy constructor Student s2 = new Student(s1); // display Console.WriteLine(s2.Display); Console.ReadLine(); } } }
Ở trên chúng ta đã thấy, trước tiên chúng ta đã khai báo một hàm tạo bản sao -
public Student(Student s)
Sau đó, một đối tượng mới được tạo cho lớp Sinh viên -
Student s1 = new Student("Jack", 2);
Bây giờ, đối tượng s1 được sao chép sang đối tượng mới s2 -
Student s2 = new Student(s1);
Đây là những gì chúng tôi gọi là phương thức tạo bản sao.