public override Product DeepCopy() { Telefon t1 = (Telefon)this.MemberwiseClone(); t1.barkodbilgisi = new BarkodBilgisi(this.barkodbilgisi.ID); return(t1); }
public void cacheDoldur() { Telefon telefon = new Telefon(100, "Samsung", "S7", 2500); this.urunler.Add(telefon); Bilgisayar bilgisayar = new Bilgisayar(105, "Asus", "GL553VD", 4500); urunler.Add(bilgisayar); }
static void Main(string[] args) { //1 bilgisayar 0 telefon ProductProto p1 = new ProductProto(); p1.cacheDoldur(); Console.WriteLine("----Cachedeki Urunler-----"); p1.urunler.ForEach(item => Console.WriteLine(item.ToString())); cizgiCiz(); Console.WriteLine("Bilgisayar Shallow Copy"); Bilgisayar b1 = (Bilgisayar)p1.urunler[1].ShallowCopy(); b1.barkodbilgisi.ID = 25; b1.marka = "Sony"; b1.model = "Viao"; cizgiCiz(); p1.urunler.ForEach(item => Console.WriteLine(item.ToString())); Console.WriteLine(b1.ToString()); cizgiCiz(); Console.WriteLine("Telefon Deep Copy"); Telefon t1 = p1.urunler[0].DeepCopy() as Telefon; t1.marka = "Vestel"; t1.model = "Venus"; t1.barkodbilgisi.ID = 35; Console.WriteLine(t1.ToString()); p1.urunler.ForEach(item => Console.WriteLine(item.ToString())); Console.ReadLine(); }