Hallo
Da ich auch mal versuchen will, skripts zu verstehen und später vielleicht auch Kleinigkeiten selbst zu schreiben, hab ich mal in eine .lua reingeguckt. Jetzt meine Frage: Was bedeutet das self.xxx?
rafftnix
Hallo
Da ich auch mal versuchen will, skripts zu verstehen und später vielleicht auch Kleinigkeiten selbst zu schreiben, hab ich mal in eine .lua reingeguckt. Jetzt meine Frage: Was bedeutet das self.xxx?
rafftnix
self ist eine "Abkürzung" für die jeweilige Klasse. self verbraucht weniger Platz wie z.b. StationFillMission, dadurch werden Codes auch wesentlich übersichtlicher.
Danke für die Hilfe.
Self ist eine Variable die die Referenz auf das jeweilige Objekt (also auf sich selber) beinhaltet, um somit auf die Properties (Attribute) und Methoden (Function) zuzugreifen. Man kann hier zwar auch jede KLassenfunktion (wie heady scon sagte) mit
Klassenname.funktionsname() aufrufen, jedoch muss man dort immer die Objektinstanz übergeben. also z.b wäre
self:funktionsname()
das gleiche wie
Klassenname:funktionsname(self);
Einweitere Vorteil der Benutzung von self tritt auf, wenn man von Klassen erbt. Hier sollte man zwingend self nutzen (man sollte es auch generell nutzen :-)), da es sonst zu problemen kommen kann.
Bei Fahrzeugen kannst du dir also vorstellen, dass SELF dein Fahrzeug ist (bzw. eine Instanz/objekt davon), um es einfach auszudrücken.
Dieses self konstrukt gibt es uach in anderen sprahcen: Java (this), C'#(this), VB.net (Me).
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!