Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C#

Interfaces ที่ Array Class ใน C# Implement

System.Array Implement Interfaces เช่น ICloneable, IList, ICollection, IEnumerable เป็นต้น ICloneable ใช้สร้าง Clone (คัดลอก) ของออบเจกต์

ICloneable Interface

มีเพียงเมธอด Clone() สำหรับสร้างออบเจกต์ใหม่ที่เป็นคัดลอกของ Instance ปัจจุบัน

ตัวอย่าง: Cloning ด้วย ICloneable

using System;

class Car : ICloneable
{
    int width;
    public Car(int width) { this.width = width; }
    public object Clone() { return new Car(this.width); }
    public override string ToString() { return string.Format("Width of car = {0}", this.width); }
}

class Program
{
    static void Main()
    {
        Car carOne = new Car(1695);
        Car carTwo = carOne.Clone() as Car;
        Console.WriteLine("{0}mm", carOne);
        Console.WriteLine("{0}mm", carTwo);
    }
}

ตัวอย่าง: Array.Clone()

using System;

class Program
{
    static void Main()
    {
        string[] arr = { "one", "two", "three", "four", "five" };
        string[] arrCloned = arr.Clone() as string[];
        Console.WriteLine(string.Join(",", arr));
        Console.WriteLine(string.Join(",", arrCloned));
    }
}