public void MakeBaby(Dad dad, string name) { Baby baby = new Baby(name); Child = baby; dad.Child = baby; //??? baby.AddComforter(dad.ComfortChild); baby.AddComforter(/*this.*/ ComfortChild); Console.WriteLine($"{Name} ha fatto un figlio con {dad.Name}, che si chiama {baby.Name}"); }
static void Main(string[] args) { #region Old GetSet _ deleted // questa sarebbe la sintassi con i getter e setter invece delle proprietà: //b.SetName("Pippo"); //Console.WriteLine(b.GetName()); // le Proprietà, rispetto ai getter e setter, mi permettono anche // operazioni di post/pre-increment, ecc. //obj.IntValue++; //obj.SetIntValue(obj.GetIntValue() + 1); #endregion Robot r2d2 = new Robot("R2D2"); Mum leila = new Mum("Leila"); Dad hanSolo = new Dad("Han Solo"); leila.MakeBaby(hanSolo, "Kylo Ren"); leila.Child.AddComforter(leila.ComfortChild); /* Aggiungi al Child di Leila il conforter TheForce (che è static) che calma il piccolo tramite il suo metodo/delegate TheForce.ConmfortChild(). */ leila.Child.AddComforter(TheForce.ComfortChild); leila.Child.StartCrying(); Console.ReadLine(); leila.Child.StartCrying(); Console.ReadLine(); leila.Child.StartCrying(); Console.ReadLine(); leila.Child.StartCrying(); Console.ReadLine(); leila.Child.StartCrying(); Console.ReadLine(); }
public void Comfort(Dad dad) { Console.WriteLine($"{Name} da' una pacca sulla spalla a {dad}."); }