Frage

Ich verstehe, was: Zustand / tut /. Es erzeugt ein Feld, wie in Java, in Ihrer Klasse. Was ich nicht verstehe ist, was der Punkt ist das? Es scheint, wie ich sehe es nur getan mit Clojure-generierten Klassen, die anderen Klassen erweitern. http://www.fatvat.co.uk/2009/ 05 / clojure-and-robocode.html ein Beispiel. Ich weiß nicht, Java, und ich bin nicht sehr gut in der objektorientierten Programmierung vertraut. Kann jemand den Punkt erklären: Zustand zu mir, und wo es paßt alles mit Java-Interop in

Vielen Dank!

Hinweis: Wenn ich sage: Zustand, ich beziehe mich auf (: gen-Klasse: Zustand)

War es hilfreich?

Lösung 3

Ich sprach sie über mit hiredman auf dem #Clojure IRC-Kanal, und er sagte mir, dass der wichtigste Punkt der es ein Zustand pro Instanz ist. Das macht Sinn.

Andere Tipps

: Zustand ist einfach eine Möglichkeit, einige Daten zwischen den Funktionen des Teilens von gen-Klasse erzeugt als Teil. Betrachten Sie es als genau das gleiche wie die Instanzdaten eines Objekts.

Weitere Infomationen auf der state und wie es initialisieren können den Artikel gen gefunden werden -Klasse - wie es funktioniert und wie man es benutzt

Aus dem Artikel:

  • :state definiert ein Verfahren, das den Zustand des Objekts wird zurückkehren.
  • :init definiert den Namen des initialiser. Dies ist eine Funktion, die einen Vektor zurückgeben muss. Das erste Element ist wieder ein Vektor der Argumente an das Super-Klasse-Konstruktor. In unserem Fall ist dies nur der leere Vektor. Das zweite Element ist Zustand des Objekts.

Insgesamt init gibt den Zustand des Objekts und wird aufgerufen, wenn das Objekt instanziiert wird. state ist eine Methode für die Klasse, als Gegensatz zu einer Funktion, dass der gleiche Wert zurück zurückgeführt, wie das zweite Element in dem Vektor durch init zurückgegeben.

Der Artikel geht dann zu zeigen, wie ein Atom zu verwenden, um die Lage sein, den Zustand des Objekts zu ändern, falls erforderlich.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top