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.