Hmmm... Du hast mal gesagt, dass Du OverflowException nicht simulieren kannst, weil dein Arbeitsspeicher groß genug ist. Ich bin kein Experte, aber ich glaube, dass OverflowEception tritt dann auf, wenn den Wertebereich von 32 Bits überschritten wird und nicht erst dann, wenn ganze Arbeitspeicher voll ist. Oder?
gutes Video und bis kurz vor Ende auch gut erklärt. Ich glaube nur, dass du viele Anfänger mit diversen unerklärten bzw. nur sehr kurz erklärten Begriffen verwirren wirst. Ich meine damit die Unterschiede zwischen den Begriffen Klasse, Namespace, Methode und vor allem was hat das eigentlich alles mit dem .NET Framework zu tun... Trotzdem Daumen hoch!
Nein, finally ist auf keinen Fall notwendig. Finally ist nur für den Fall gedacht, wenn du unabhängig davon, ob eine Exception auftritt oder nicht, Code ausführen willst. Statt den Code dann jeweils in die einzelnen Blöcke zu schreiben, packt man das in finally, sodass es übersichtlicher wird. Allerdings muss man sich auch darüber im Klaren sein, dass auch in finally wieder eine Exceptio, auftreten kann.
Wie immer alles super erklärt! Aber mal eine Frage: Wie werfe ich denn eine Exception irgendwo rein? Wenn ich z.B. will, dass etwas begrenzt wird... if (value > 100) { ? } Hiermit ist das Alter eines Menschen gemeint und ich möchte hier eine Fehlermeldung wiedergeben, wenn er älter ist wie 100 :)
Hallo, leider habe ich vergessen, das ins Video zu bringen. Wenn ich das nochmal "drehe", dann versuche ich, dran zu denken :-) Jetzt aber zum eigentlichen Problem: Es gibt mehrere Exception-Klassen, die meisten davon liegen im Namespace System. In deinem Fall würde sich eine ArgumentOutOfRangeException abieten: throw new ArgumentOutOfRangeException(); Ich hoffe, ich konnte helfen und weiterhin viel Spaß!
Wenn eine Funktion einen String erwartet, grundsätzlich erst mal nicht. Es gibt jedoch Ausnahmen: Die Conosle.WriteLine()-Funktion hat eine Überladung, in der ein Parameter vom Typ "Object" akzeptiert wird. Da die Klasse Object, von der alle anderen ableiten, eine ToString()-Methode hat, kann Console.WriteLine() diese aufrufen und erhält so den String, den sie ausgibt. Ein weiteres Beispiel ist das Zusammenfügen von Strings: string s = "Die Erde ist in etwa " + 4.6 + " Milliarden Jahre alt!"; Obwohl 4.6 eine Variable vom Typ double ist, wird sie einfach in einen String gecastet.
Vielen Dank für das Video obwohl es 2 jahre her war
Hmmm... Du hast mal gesagt, dass Du OverflowException nicht simulieren kannst, weil dein Arbeitsspeicher groß genug ist. Ich bin kein Experte, aber ich glaube, dass OverflowEception tritt dann auf, wenn den Wertebereich von 32 Bits überschritten wird und nicht erst dann, wenn ganze Arbeitspeicher voll ist. Oder?
hab ich auch gedacht, wobei diese antwort wohl zu spät kommt
gutes Video und bis kurz vor Ende auch gut erklärt. Ich glaube nur, dass du viele Anfänger mit diversen unerklärten bzw. nur sehr kurz erklärten Begriffen verwirren wirst. Ich meine damit die Unterschiede zwischen den Begriffen Klasse, Namespace, Methode und vor allem was hat das eigentlich alles mit dem .NET Framework zu tun... Trotzdem Daumen hoch!
Vielen Dank für die konstruktive Kritik!!! Ich werde das beim nächsten Mal beachten.
Sehr gutes Video...
Hey wir haben auch einen Discord Server wenn ihr wollt könnt ihr gerne reinkommen
discord.gg/AYKcWBsaJE
Tolle Videoreihe.
Ich bin mir allerdings nicht ganz klar darüber, was du an der Stelle 12:32 meinst.
:)
Ehhh supper Video :D
Was ist mit throw ?
ist finally nötig kann man den befehl nicht einfach normal unter try und chatch und so hinschreiben?
Nein, finally ist auf keinen Fall notwendig. Finally ist nur für den Fall gedacht, wenn du unabhängig davon, ob eine Exception auftritt oder nicht, Code ausführen willst. Statt den Code dann jeweils in die einzelnen Blöcke zu schreiben, packt man das in finally, sodass es übersichtlicher wird. Allerdings muss man sich auch darüber im Klaren sein, dass auch in finally wieder eine Exceptio, auftreten kann.
GermanCsharpTutorial Ok danke für die schnelle und hilfreiche antwort.
Wie immer alles super erklärt! Aber mal eine Frage: Wie werfe ich denn eine Exception irgendwo rein? Wenn ich z.B. will, dass etwas begrenzt wird...
if (value > 100)
{
?
}
Hiermit ist das Alter eines Menschen gemeint und ich möchte hier eine Fehlermeldung wiedergeben, wenn er älter ist wie 100 :)
Hallo,
leider habe ich vergessen, das ins Video zu bringen. Wenn ich das nochmal "drehe", dann versuche ich, dran zu denken :-)
Jetzt aber zum eigentlichen Problem: Es gibt mehrere Exception-Klassen, die meisten davon liegen im Namespace System. In deinem Fall würde sich eine ArgumentOutOfRangeException abieten: throw new ArgumentOutOfRangeException();
Ich hoffe, ich konnte helfen und weiterhin viel Spaß!
kann man statt ex.ToString auch einfach ex schreiben?
Wenn eine Funktion einen String erwartet, grundsätzlich erst mal nicht.
Es gibt jedoch Ausnahmen:
Die Conosle.WriteLine()-Funktion hat eine Überladung, in der ein Parameter vom Typ "Object" akzeptiert wird. Da die Klasse Object, von der alle anderen ableiten, eine ToString()-Methode hat, kann Console.WriteLine() diese aufrufen und erhält so den String, den sie ausgibt.
Ein weiteres Beispiel ist das Zusammenfügen von Strings:
string s = "Die Erde ist in etwa " + 4.6 + " Milliarden Jahre alt!";
Obwohl 4.6 eine Variable vom Typ double ist, wird sie einfach in einen String gecastet.
Wie hast du dir das Wissen angeeignet? :)
Im Wesentlichen durch Bücher. Der optimale Lernweg ist aber wahrscheinlich sehr individuell.