1 / 29

MSDN Webcast: VB.NET für Einsteiger und Umsteiger, Teil 6 Schnittstellen (Interfaces) (Level 100)

MSDN Webcast: VB.NET für Einsteiger und Umsteiger, Teil 6 Schnittstellen (Interfaces) (Level 100). Presenter : Daniel Walzenbach Technologieberater Microsoft Deutschland GmbH daniel.walzenbach@microsoft.com http://blogs.msdn.com/walzenbach. Verlosung.

tareq
Télécharger la présentation

MSDN Webcast: VB.NET für Einsteiger und Umsteiger, Teil 6 Schnittstellen (Interfaces) (Level 100)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. MSDN Webcast:VB.NET für Einsteiger und Umsteiger, Teil 6Schnittstellen (Interfaces)(Level 100) Presenter: Daniel Walzenbach Technologieberater Microsoft Deutschland GmbH daniel.walzenbach@microsoft.com http://blogs.msdn.com/walzenbach

  2. Verlosung • Programmieren lernen mit Visual Basic 2005 • 10 Bücher werden unter allen Teil-nehmern verlost, die an mindes-tens sieben Webcasts teilnehmen

  3. Visual Studio 2005 Express • Kleine Geschwister des Visual Studio 2005 • Kostenlos • http://www.microsoft.com/germany/msdn/vstudio/products/express/vb/default.mspx • Visual Basic 2005 Express Edition • Visual C# 2005 Express Edition • Visual C++ 2005 Express Edition • Visual Web Developer 2005 Express Edition • SQL Server 2005 Express Edition

  4. Weihnachtswebcast - Frage 8 • In welchen Jahr wurde Microsoft gegründet? • 1995  Position 1 ein C • 1830  Position 13 ein S • Kurz bevor Windows kam  Position 10 ein L • 1975  Position 2 und 10 ein I • Lösungswortbiseinschl. 13.12.2006 an MsdnXmas@microsoft.com

  5. Agenda • Übungsaufgabe Teil 5 • Kombinierte Formatierung • Schnittstellen • Übungsaufgabe • Zusammenfassung

  6. Übungsaufgabe, Teil 5 • Schreiben Sie eine Klasse, die alle Daten einer Person verwaltet • Name, Vorname, PLZ, Ort, Straße, Telefon • Überschreiben Sie die Methode ToString für die Ausgabe der Daten • Implementieren Sie Eigenschaften zum Setzen der Daten • Implementieren Sie eine einfache Prüfroutine für die PLZ (PLZ > 0und PLZ < 99999)

  7. Demonstration #1 demo Übungsaufgabe, Teil 5

  8. Agenda • Übungsaufgabe Teil 5 • Kombinierte Formatierung • Schnittstellen • Übungsaufgabe • Zusammenfassung

  9. Kombinierte Formatierung • Werte in einem Text mit Platzhaltern einbetten • Alle Formatelemente (nullbasierend) weisen folgende Form auf: • Mehrere Formatelemente können auf dasselbe Element in der Werteliste verweisen • Jedes Formatelement kann auf einen beliebigen Parameter verweisen DimName AsString= "Daniel" Console.WriteLine("Hallo {0}!", Name) {Index[,Ausrichtung][:Formatzeichenfolge]}

  10. Kombinierte Formatierung • Ausrichtung [optional] • Gibt die gewünschte formatierte Feldbreite an • Ist die Ausrichtung kleiner als die Länge der formatierten Zeichenfolge, wird diese ignoriert, ansonsten mit Leerzeichen aufgefüllt • Positiver Wert  rechtsbündige Ausrichtung • Negativer Wert  linksbündige Ausrichtung {Index[,Ausrichtung][:Formatzeichenfolge]} DimName AsString= "Daniel" Console.WriteLine("Hallo {0,10}!", Name) ' Hallo Daniel! 10 Zeichen

  11. Kombinierte Formatierung • Formatzeichenfolge [optional] • Standardformatbezeichnern • benutzerdefinierten Formatbezeichnern • Doppelpunkt ist erforderlich • Ausrichtung und Formatzeichenfolgen können kombiniert werden {Index[,Ausrichtung][:Formatzeichenfolge]} Console.WriteLine("{0:X} ~ {0:E} ~ {0:N} ~ {0:C}", 255) ' FF ~ 2,550000E+002 ~ 255,00 ~ 255,00 € DimmyDouble AsDouble= System.Math.PI myDouble =String.Format("**{0,10:##.###}**", myDouble) ' ** 3,142** 10 Zeichen

  12. Demonstration #2 demo Kombinierte Formatierung

  13. Agenda • Übungsaufgabe Teil 5 • Kombinierte Formatierung • Schnittstellen • Übungsaufgabe • Zusammenfassung

  14. Schnittstellen • Was sind Schnittstellen (= Interfaces)? • Schnittstellen definieren „Verhaltensweisen“ • Eine Schnittstelle ist ein Vertrag zwischen getrennten Codeteilen • Wenn eine Klasse eine Schnittstelle benutzt (implementiert) ist sichergestellt, dass die Klasse ALLE Methoden, Eigenschaften, … der Schnittstelle implementiert! • Die Schnittstelle darf nach der Veröffentlichung NICHT mehr geändert werden!

  15. Schnittstellen • Deklaration wie Klassen jedoch mit leeren Methoden, Eigenschaften, … PublicInterfaceITier SubSpielen() EndInterface PublicClassHund ImplementsITier PublicSubSpielen() ImplementsITier.Spielen Console.WriteLine("Hund spielt.") EndSub EndClass PublicClassKatze ImplementsITier PublicSubSpielen()ImplementsITier.Spielen Console.WriteLine("Katze spielt.") EndSub EndClass

  16. Demonstration #3 demo Schnittstellen

  17. Schnittstellen • Die Klasse, welche die Schnittstelle implementieren soll, wird von der Schnittstelle „abgeleitet“ • Durch das Implementieren einer Schnittstelle ist sichergestellt, dass die Klasse alle Methoden, Eigenschaften, etc. der Schnittstelle implementiert • Ansonsten wirft der Compiler einen Fehler • Die Schnittstelle darf nach der Veröffentlichung NICHT mehr geändert werden!

  18. Schnittstellen als Parameter • Bei Schnittstellen handelt es sich um vollwertige Typen • Können auch für die Deklaration einer Variablen oder als Parameter einer Prozedur verwendet werden ModuleModule1 SubMain() DimHasso AsNewHund TierSpielenLassen(Hasso) EndSub PublicSubTierSpielenLassen(ByValTier AsITier) Tier.Spielen() EndSub EndModule PublicInterfaceITier SubSpielen() EndInterface PublicClassHund ImplementsITier ' Implementierung von Hund EndClass

  19. Demonstration #4 demo Schnittstellen als Parameter

  20. Schnittstellen vs. Abstrakte Klassen • Schnittstellen enthalten ausschließlich Definitionen, abstrakte Basisklassen können einen Mix aus Definitionen und gemeinsamen Funktionscode enthalten • Eine Klasse kann mehrere Schnittstellen implementieren aber nur von einer Klasse erben. • Eine Schnittstelle kann von beliebig vielen anderen Schnittstellen erben

  21. Agenda • Übungsaufgabe Teil 5 • Kombinierte Formatierung • Schnittstellen • Übungsaufgabe • Zusammenfassung

  22. Übungsaufgabe • Schreiben Sie die zwei Klassen Amateurspieler und Profispieler • Beide Klassen sollen ein Interface ISpieler implementieren • Property SpielerName • Property Position • Methode Torschiessen • Schreiben Sie eine Methode welche die Namen, Position und geschossenen Tooooore der Spieler ausgibt

  23. Agenda • Übungsaufgabe Teil 5 • Kombinierte Formatierung • Schnittstellen • Übungsaufgabe • Zusammenfassung

  24. Zusammenfassung • Kombinierte Formatierung • {Index[,Ausrichtung][:Formatzeichenfolge]} • Interfaces • Vertrag zwischen getrennten Codeteilen • Stellen sicher, dass die enthaltenen Methoden, Properties, … in der Klasse, die das Interface implementiert, enthalten sind • Die Schnittstelle darf nach der Veröffentlichung NICHT mehr geändert werden!

  25. Nächste Termine • VB.NET für Einsteiger und Umsteiger, Teil 7 • Strukturierte Ausnahmebehandlung • Montag, 11.12.2006 16:00-17:00 Uhr • VB.NET für Einsteiger und Umsteiger, Teil 8 • Arrays • Montag, 18.12.2006 16:00-17:00 Uhr

  26. Referenzen & Downloads • ObjektorientiertesProgrammieren in Visual Basic • http://msdn2.microsoft.com/de-de/library/b86b82w0(VS.80).aspx • Class-Anweisung • http://msdn2.microsoft.com/de-de/library/wa0hwf23(VS.80).aspx • Vererbung in Visual Basic • http://msdn2.microsoft.com/de-de/library/5x4yd9d5(VS.80).aspx • Schnittstellen in Visual Basic • http://msdn2.microsoft.com/de-de/library/28e2e18x(VS.80).aspx

  27. Referenzen & Downloads • Formatierung von Typen • http://msdn2.microsoft.com/de-de/library/fbxft59x(VS.80).aspx • KombinierteFormatierung • http://msdn2.microsoft.com/de-de/library/txafckwd(VS.80).aspx • Microsoft Visual Basic 2005 - Das Entwicklerbuch • http://www.edv-buchversand.de/mspress/product.asp?cnt=product&id=ms-537&lng=0 • MSDN Solve, AntwortenfürEntwickler • http://msdn-solve.de/

  28. Questions and Answers Daniel Walzenbach daniel.walzenbach@microsoft.com http://blogs.msdn.com/walzenbach

More Related