98-372 Understand .Net Framework Concepts
Exception Handling, Events und Delegates und app Settings verstehen
Exception Handling, Events und Delegates und app Settings verstehen
Kartei Details
Karten | 49 |
---|---|
Sprache | Deutsch |
Kategorie | Informatik |
Stufe | Universität |
Erstellt / Aktualisiert | 01.01.2014 / 17.09.2014 |
Weblink |
https://card2brain.ch/box/98372_understand_net_framework_concepts
|
Einbinden |
<iframe src="https://card2brain.ch/box/98372_understand_net_framework_concepts/embed" width="780" height="150" scrolling="no" frameborder="0"></iframe>
|
Lernkarteien erstellen oder kopieren
Mit einem Upgrade kannst du unlimitiert Lernkarteien erstellen oder kopieren und viele Zusatzfunktionen mehr nutzen.
Melde dich an, um alle Karten zu sehen.
Welche Exception wird geworfen wenn du eine verbotene Castoperation durchzuführen versuchst?
System.InvalidCastException
Was ist ein impliziter Cast?
Wenn man von einem Typ auf seinen Basistyp castet, kann man das ohne Castoperator tun. In die andere Richtung geht das nich so einfach.
Was ist der Unterschied zwischen "new" und "override"?
Mit override wird der base class member der Basisklasse ersetzt. Bei new wird ein neuer Member auf der abgeleiteten Klasse erzeugt, der der Basisklasse bleibt bestehen. Will man Objekte polymorph behandeln, führ das zu problemen, denn dann wird der "hidden" Member der Basisklasse verwendet und nicht der neu erzeugte der abgeleiteten Klasse.
Was kann (5) alles in einem Interface definiert werden und was nicht (2)?
+
- Methodensignatur
- Properties
- Delegates
- Events
- Indexers
-
- Datafield
- Implementationsdetails
Wann verwende ich ein interface und wann eine abstrakte Klasse? Welche Frage kann ich mir stellen?
Wenn eine "is a" Relationship besteht, benutzt du eine abstrakte Klasse, ansonsten implementierst du ein Interface.
Für was braucht man Namespaces?
Um Hirarchien zu erstellen und Ordnung bei vielen Klassen zu schaffen. Aus einem Namespace wird nie automatisch eine DLL.
Kann sich ein Namespace über mehrere Klassen und Files erstrecken?
Ja. Das heisst zur Kompilierungszeit kann der Kompiler über mehrere Assemblies schauen und einen eindeutigen Namespace kreiren.
Was sind die zulässigen access modifiers für top-level Klassen? Also Klassen die in einem Namespace (man kann ja auch Klassen in Klassen erstellen) erstellt werden?
- public
- internal
protected internal, private und protected sind nur in nested Klassen erlaubt
Was wird der Compiler für einen Fehler ausgeben, wenn man versucht auf ein Element in einem Namespace zuzugreifen, wenn es in einem anderen Namespace ein Element mit dem selben Namen gibt?
Ambiguous References
Wie heisst das Interface, das eine Klasse implementieren muss, wenn sie Vergleichbarkeit zur Verfügung stellen will? Und wie heisst der Methodenbody den sie zur Verfügung stellen muss?
- IComparable
- CompareTo
ist ein Delegate ein reference oder ein value Type?
reference
wie sieht eine Delegatedeklaration eines Delegates (z.B. myDelegate) aus, der auf eine Methode zeigen kann, die nichts zurückgibt und zwei Strings als Parameter übernimmt?
public delegate void MyDelegate(string s1, string s2);
wie verknüpfe ich einen Delegate (z.B. myDelegate), der zwei Strings annimmt und void zurückgibt mit einer Methode1 und wie rufe ich dann diese Methode indirekt mit dem Delegate auf?
MyDelegate handler;
handler += Methode1;
handler(s2, s2); //Methodenaufruf;
Mit dieser Technik kann man eine sogenannte Aufrufsliste des Delegate erzeugen. Er ruft dann eine Methode nach der anderen auf.
In welcher Reihenfolge müssen catch Blöcke stehen, wenn man unterschiedliche Detaillierungsgrade der Exceptions hat? Der spezifischere zuerst oder am Schluss? Was passiert, wenn man das nicht richtig macht?
Der spezifischere vor den generischeren Blöcken. Der Compiler wirft sonst einen Fehler.
Wie kann ich zur Laufzeit auf den Connectionstring in einer Webapplikation zugreifen, der folgendermassen definiert ist:
...
<connectionStrings>
<add name="prodServer" connectionString= server= ProdServer; database=northwind;Integrated...">
...
<connectionStrings/>
ConnectionStringSettings connString = WebConfigurationManager.ConnectionStrings["ProdServer"];
Was sind die 2 Voraussetzungen für einen Event?
- Einen Delegate, der den Event mit dem Handler verknüpft.
- Eine Datenklasse, die von EventArgs ableitet.
Wie heisst das Rootelement einer application settings?
<configuration>
Wie heisst der tag für custom application settings?
<appSettings>
Wie heisst das file für die Settings einer Applikation namens app.exe?
app.exe.config
Wie viele Properties stellt der ConfigurationManager zur Verfügung und wie heissen sie?
- 2
- AppSettings und ConnectionStrings
Was bedeutet Exceptions sind typesafe?
Jede Exception ist von einem bestimmten Typ
Wie heisst der Namespace von dem alle Exceptions ableiten?
System.Exceptions
Wann kann ein try{} Block ohne ein catch auskommen?
Wenns mindestens ein finally gibt
Wie ist der EventHandler definiert (Code)
public delegate void EventHandler(object sender, EventArgs e);
Wie initialisiere ich einen Delegate? (Pseudocode)
MyDelegate hadler = new MyDelegate([Methode die aufgerufen werden soll]);
Wie löse ich einen Delegate aus, der so definiert ist:
delegate void MyDelegate(string message);
MyDelegate handler = new MyDelegate([Ausführende Methode]);
handler("Mein String");
Wie verwende ich einen Delegate wie einen Event? Soll heissen, dass ich noch weitere Methoden mit dem einen Delegate aufrufen kann? Der Delegate ist wie folgt definiert.
delegate void MyDelegate(string message);
MyDelegate handler = new MyDelegate([Ausführende Methode 1]);
handler += [Ausführende Methode 2];
Was für Daten werden unter <connectionsettings>... </connectionsettings> gespeichert?
Datenbankverbindung
Wie kann ich mit Hilfe des Configurationmanager zur Laufzeit auf die AppSettings zugreifen?
ConfigurationManager.AppSettings[[Name des Settings]]
Was passiert beim Starten einer Applikation mit den AppSettings. Von wo aus werden AppSettings zur Laufzeit geladen?
Sie werden beim Starten in den Speicher geladen. Wenn man sie verwendet, werden die Daten nicht aus dem XML geholt sondern direkt aus dem Speicher.
-
- 1 / 49
-