‫Willkommen zurück.
‫In diesem Video werden wir über Struts sprechen und Struts sind Klassen sehr ähnlich, aber Klassen, alle
‫Referenztypen und Strukturen sind bewertete Typen, dh wenn Sie ein Objekt einer Klasse erstellen,
‫kann es nichts enthalten.
‫Es kann also leer sein, aber eine Struktur muss einen Wert haben.
‫Dort heißt die Struktur game.
‫Sie verwenden also das Schlüsselwort struct und geben ihm dann einen Namen.
‫Es ist also einem Klassenzimmer sehr ähnlich und was Sie sehen können.
‫Sie haben also diesen Namen hier und können dann hier Variablen erstellen.
‫Also werde ich einen erstellen, der name heißt.
‫Dann werde ich eine erstellen, die Entwickler und eine Bewertung heißt.
‫Wie wird dieses Spiel bewertet und dann das Veröffentlichungsdatum der öffentlichen Saiten?
‫Also, wann wurde es veröffentlicht?
‫Das ist also eine einfache Struktur.
‫Jetzt können wir fortfahren und ein Objekt dieser Struktur erstellen, damit wir fortfahren und sagen können, OK,
‫Spiel eins wie dieses.
‫Jetzt haben wir dieses Spiel, aber um dieses Spiel zu verwenden, müssen wir es spezifizieren.
‫Wir brauchen also die Spezifikation des ersten Spiels, zum Beispiel müssen wir den Namen festlegen
‫und sagen wir, war Puckermans Ziel, dann braucht Spiel eins einen Entwickler.
‫Also sagen wir so etwas
‫wie Niantic und dann braucht Spiel eins eine Bewertung, sagen wir mal drei Komma fünf von fünf Sternen und schließlich
‫das Erscheinungsdatum.
‫Sie können die Werte also einfach so einstellen.
‫Es ist also sehr ähnlich zu dem, was Sie mit einer Klasse machen würden, richtig.
‫Also wurde es sechzehn veröffentlicht.
‫Und das ist unsere Spielstruktur, die wir hier haben.
‫Jetzt können wir loslegen und Spielinformationen auf die Konsole schreiben.
‫Nehmen wir an, wir wollen den Namen des Spiels schreiben.
‫Also s. W. Spiel eins.
‫Und SNAME ist und dann geschweifte Klammern, Null und Gedankengewinn, nennen Sie alle eigentlich Spiel eins, diesen Namen.
‫Wie Sie sehen, können Sie einfach seine Variablen aufrufen, damit wir dasselbe tun können, nicht nur
‫mit einem Namen.
‫Das können wir mit allem anderen machen.
‫Ich werde das einfach kopieren.
‫Spiel eins wurde entwickelt von und jetzt ist es nicht der Name des Spiels, sondern der Entwickler.
‫Und das gleiche hier ist die Bewertung von Spiel eins.
‫Und hier ist die Bewertung und endlich wurde Spiel eins in Spiel eins veröffentlicht, kostenlos gelistet.
‫Lassen Sie es uns jetzt ausführen, trösten, Schlüssel lesen und sehen, was passiert.
‫Und wir sind der Name von Spiel eins ist Pokemon Go Spiel eins wurde von Niantic entwickelt und bewertet mit
‫drei Komma fünf und wurde am 1. Juli 2016 veröffentlicht.
‫Gut.
‫Damit wir es sind, ist es sehr einfach und einer Klasse sehr ähnlich.
‫Rechts.
‫Wie unterscheidet es sich also?
‫Nun, es gibt noch eine Sache, bei der es sich nicht unterscheidet.
‫Ich werde also eine öffentliche Leeranzeige erstellen, die Informationen anzeigen soll.
‫Und was ich tun werde, ist, dass ich das alles einfach dort ausführen werde.
‫Also wird es mir den Namen geben.
‫Es wird mir der Entwickler geben.
‫Es wird mir die Bewertung und das Veröffentlichungsdatum geben.
‫Gut.
‫Jetzt kann ich stattdessen einfach die Methode display aufrufen, indem ich Spiel eins aufrufe und sage,
‫bitte alle Informationen anzeigen wird wieder ausgeführt und wir werden sehen.
‫Wir hatten alle Informationen.
‫Gut.
‫Sie können also Variablen erstellen.
‫Sie können Methoden erstellen.
‫Aber wie unterscheidet es sich?
‫Nun, was Sie nicht tun können, ist, dass Sie keine Konstruktorstruktur erstellen können, die keine expliziten Parameterkonstruktoren enthalten
‫kann.
‫Sie können hier also Standardkonstruktoren erstellen und dann eine oder mehrere Schnittstellen implementieren.
‫Hier könnten Sie also direkt Schnittstellen implementieren.
‫ich verschließbar.
‫Ich vergleiche solche Sachen.
‫Dann unterstützen sie keine Vererbung.
‫Sie können also keine Vererbung verwenden oder Anweisungen geben, dass Sie keinen Standardkonstruktor haben können.
‫Wie gesagt, die Dozenten-Mitglieder können nicht als abstrakt, virtuell oder geschützt bezeichnet werden.
‫Sie können also einfach so etwas wie öffentlich sein.
‫Sie können also eine öffentliche Struktur oder eine private Struktur haben.
‫Struts können jedoch definierte Konstruktoren haben, so dass Sie so etwas wie ein
‫öffentliches Spiel haben und dann den Stringnamen haben, den können Sie haben und es wird einen Namen oder diesen geben.
‫Dieser Name ist gleich Name.
‫Und dass Entwickler gleich ist entwicklerbasierte Bewertung ist gleich Bewertung.
‫Und dieses DOT-Veröffentlichungsdatum ist gleich dem Veröffentlichungsdatum.
‫Jetzt musst du sie natürlich hier drin haben, String-Entwickler, dann Doppelbewertung und String-Release-Datum.
‫Wenn Sie dann jedoch beispielsweise die Anzeigemethode hier anzeigen möchten, tritt ein Fehler auf, da die nicht
‫zugewiesene lokale Variable game one verwendet wird.
‫Spiel eins wurde also nicht zugewiesen.
‫Also, selbst wenn ich es versucht habe, sagen wir, nachdem Sie alle Informationen hier haben, sehen Sie, dass immer noch ein Fehler
‫vorliegt.
‫Sie müssen also all die verschiedenen Informationen zu diesem Spiel haben, denen eine zugewiesen werden muss.
‫Sonst funktioniert dieses Spiel nicht.
‫Auch hier erhalten wir also nach der Bewertung immer noch den gleichen Fehler.
‫Erst nachdem wir alle Werte zugewiesen haben, können wir arbeiten.
‫Es funktioniert also nach Wert, nicht nach Verweis, wie es eine Klausel tun würde, oder?
‫Wenn Sie also eine kurze Zusammenfassung haben möchten, ist Stack, Overflow Ihr Freund, also eine kurze Zusammenfassung
‫jeder Klasse unterstützt die Vererbung.
‫Unsere Referenzprototypen können null sein und mehr Overreporting aufweisen.
‫Ihre Instanz, nur Destructs können keine Vererbung unterstützen oder Werttypen werden ähnlich wie ganze Zahlen nach
‫Werten übergeben.
‫Dann hat Kennet, wie Sie gerade gesehen haben, eine Nullreferenz und hat kein Gedächtnis, zum Beispiel überhitzt und beide
‫haben eine Verbindung oder unsere Verbindung.
‫Datentypen, die normalerweise verwendet werden, um einige Variablen zu enthalten, die eine logische Beziehung aufweisen, können
‫Methoden und Ereignisse enthalten und können Schnittstellen unterstützen.
‫Auch wenn Simon Stevens argumentiert, dass Klassen nicht immer gehen und er angewiesen hat, nicht immer auf Stack zu gehen.
‫Richtig, und dieser Stack-Overflow-Eintrag enthält im Allgemeinen einige wertvolle Informationen über Struts.
‫Also die Unterschiede zwischen Streben und Klassen, aber die meisten davon haben Sie hier gesehen.
‫Aber wie immer empfehle ich immer, auch die Dokumentation zu lesen, um ein besseres Verständnis zu bekommen.