Events Flashcards
Vad är ett event i C#?
a) En statisk variabel som innehåller information om något som har inträffat.
b) En asynkron process som utförs i bakgrunden för att hantera inkommande användaråtgärder.
c) En mekanism som möjliggör publisering och prenumeration av händelser och åtgärder i en applikation.
Svar: c) En mekanism som möjliggör publisering och prenumeration av händelser och åtgärder i en applikation.
Vilket av följande påståenden om events är korrekt?
a) Events används endast för att hantera undantag i C#.
b) Events är en mekanism för att överföra data mellan olika delar av en applikation.
c) Events används för att hantera och svara på händelser som inträffar under programkörningen.
Svar: c) Events används för att hantera och svara på händelser som inträffar under programkörningen.
Hur prenumererar du på ett event i C#?
a) Genom att använda if-satser för att övervaka förändringar i programmet.
b) Genom att skapa en ny instans av klassen som genererar eventet och använda den för att hantera händelsen.
c) Genom att använda +=-operatorn för att koppla en händelsehanterare (event handler) till eventet.
Svar: c) Genom att använda +=-operatorn för att koppla en händelsehanterare (event handler) till eventet.
Vilket syfte tjänar en händelsehanterare (event handler) i C#?
a) Den används för att visa popup-meddelanden till användaren.
b) Den används för att definiera hur programmet ska reagera på ett specifikt event.
c) Den används för att skapa nya objekt i minnet under körning.
Svar: b) Den används för att definiera hur programmet ska reagera på ett specifikt event.
Vad är det första steget för att använda ett event i C#?
a) Skapa en ny klass som innehåller alla händelsehanterare.
b) Skapa en instans av klassen som genererar eventet.
c) Skapa en händelse (event) genom att använda nyckelordet event i en klass.
Svar: c) Skapa en händelse (event) genom att använda nyckelordet event i en klass.
Vilken av följande kodsnuttar visar korrekt användning av ett event i C#?
a) public class MyEvent { public event EventHandler MyEventOccurred; } b) public class MyEvent { public delegate void MyEventHandler(object sender, EventArgs e); public event MyEventHandler MyEventOccurred; } c) public class MyEvent { public MyEventOccurred += MyEventHandler; }
Svar: a & b
Vilken del av en C#-klass används vanligtvis för att utlösa (raise) ett event?
a) Konstruktorn
b) Metoden
c) Egenskapen
Svar: b) Vanligtvis används en metod i klassen för att utlösa (raise) ett event.
Vad gör följande kodsnutt?
MyEvent myEvent = new MyEvent(); myEvent.MyEventOccurred += (sender, e) => Console.WriteLine("Event occurred");
a) Skapar en instans av en klass som genererar eventet och prenumererar på det med en händelsehanterare som skriver ut ett meddelande när eventet inträffar.
b) Skapar en händelsehanterare som inte är kopplad till något event.
c) Skapar en händelsehanterare som är kopplad till ett event, men utan att ange vad som ska hända när eventet inträffar.
Svar: a) Kodsnutten skapar en instans av en klass som genererar eventet och prenumererar på det med en händelsehanterare som skriver ut ett meddelande när eventet inträffar.
Vilken av följande kodsnuttar visar korrekt sätt att ta bort en händelsehanterare från ett event?
a) myEvent.MyEventOccurred = null; b) myEvent.MyEventOccurred -= MyEventHandler; c) myEvent.MyEventOccurred.Unsubscribe(MyEventHandler);
Svar: b) Alternativ b visar korrekt sätt att ta bort en händelsehanterare från ett event genom att använda -=.