Lyhyet esimerkit:Olion kopiointi

Mureakuha

Loikkaa: valikkoon, hakuun
using System;
// IClonable rajapinta esittelee Clone-metodin
class K : ICloneable
{
        //muuttuja jokuArvo on kokeen tekemistä varten
	public int jokuArvo;
        
	public K(int i)
	{
		jokuArvo = i;
	}
       
 	public object Clone()
	{
                //MemberwiseClone kuuluu object luokkaan, koska
                //kyseinen metodi on suojattu (protected), niin
                //se pitää palauttaa julkisesta metodista kuten Clone
		return this.MemberwiseClone;
	}
 
	public static void Main()
	{
                //Alkuperäinen olio
		K k1 = new K(7);
                //Cloonataan k1 muuttujaan k2
		K k2 = (K)k1.Clone();
                //Tehdään koe muutos k2, jotta voidaan todeta sen olevan
                //eriosoitteessa, kuin k1
		k2.jokuArvo = 10;
                //Testi tuloste, joka tulostaa k1=7 ja k2=10 eli testi onnistui
		Console.WriteLine("k1={0} ja k2={1}", k1.jokuArvo, k2.jokuArvo);
	}
}
Henkilökohtaiset työkalut