1. net framework: общая характеристика, основные компоненты. А


Download 263.94 Kb.
bet36/36
Sana27.03.2023
Hajmi263.94 Kb.
#1300004
1   ...   28   29   30   31   32   33   34   35   36
Bog'liq
Информатика ответы

25) Копирование объектов.
Это делается с помощью конструктора копий…
В отличие от некоторых языков в C# отсутствует конструктор копии. Если создан новый объект и требуется скопировать значения из существующего объекта, необходимо создать соответствующий метод самостоятельно.
Пример
В данном примере класс Person содержит конструктор, который принимает другой объект типа Person в качестве аргумента. Содержимое полей в данной объекте назначается полям в новом объекте. Конструктор новой копии отправляет значения полей name и age копируемого объекта конструктору экземпляра класса.

class Person


{
private string name;
private int age;

// Copy constructor.


public Person(Person previousPerson)
{
name = previousPerson.name;
age = previousPerson.age;
}

//// Alternate copy contructor calls the instance constructor.


//public Person(Person previousPerson)
// : this(previousPerson.name, previousPerson.age)
//{
//}

// Instance constructor.


public Person(string name, int age)
{
this.name = name;
this.age = age;
}

// Get accessor.


public string Details
{
get
{
return name + " is " + age.ToString();
}
}
}

class TestPerson


{
static void Main()
{
// Create a new person object.
Person person1 = new Person("George", 40);

// Create another new object, copying person1.


Person person2 = new Person(person1);
Console.WriteLine(person2.Details);

// Keep the console window open in debug mode.


Console.WriteLine("Press any key to exit.");
Console.ReadKey();
}
}
// Output: George is 40



Download 263.94 Kb.

Do'stlaringiz bilan baham:
1   ...   28   29   30   31   32   33   34   35   36




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling