Wie heißt es, wenn ein Objekt ein Objekt desselben Typs in sich hat?Objekt innerhalb des Objekts
Beispiel:
public class Foo{
public Foo myFoo;
}
Wie heißt es, wenn ein Objekt ein Objekt desselben Typs in sich hat?Objekt innerhalb des Objekts
Beispiel:
public class Foo{
public Foo myFoo;
}
Ich glaube nicht, dass es für diese irgendwelche speziellen Namen. Obwohl dieses Konzept in vielen verschiedenen gängigen Programmierkonstrukten verwendet wird. Wenn zum Beispiel ein Graph, eine Struktur oder eine verknüpfte Liste dargestellt wird, haben die Knoten normalerweise Referenzen auf andere Knoten, mit denen sie verbunden sind/verbunden sind.
Ja, ich würde es einen Baum oder eine Liste oder was auch immer seine Form ist nennen. – ChrisW
rekursive Eindämmung .... :)
Hast du das gerade erfunden? – StriplingWarrior
Ja, es gibt auch den Begriff "rekursive Komposition" (http://en.wikipedia.org/wiki/Object_composition#Recursive_composition) –
Ja. :) Rekursive Komposition ist auch gut :) –
Dies bedeutet, dass Foo
eine 'rekursive Datenstruktur' ist. Beispiele hierfür sind Bäume, Graphen, verknüpfte Listen usw. Es sind nicht viele signifikante Programme geschrieben, die nicht wenigstens einige rekursive Strukturen verwenden, z. In jeder SQL-Server-Implementierung ist es ziemlich üblich, dass der Abfrageplan, der ausgeführt wird, auf ähnliche Weise definiert wird. Als kleines Beispiel könnte die WHERE
Klausel auf eine FilterNode
übersetzt bekommen, die von einem anderen Node
auf Daten wirkt empfangen wird (wie ein Table-Scan):
public interface Node { }
public class FilterNode implements Node {
public Node underlyingNode;
public Condition filterCondition;
}
In vielen Fällen ist die Gesamtstruktur eines gerichteten azyklischen Graphen bildet, die bedeutet, es ist einfach, es rekursiv sicher zu durchlaufen. Aber wenn es Zyklen hat, dann müssen Sie darauf achten, dass Sie nicht in unendliche Rekursion geraten (worüber eine andere obige Antwort humorvoll warnt).
Um hinzuzufügen, was Kibbee sagte, ist dies eine Art von einem zusammengesetzten Muster
Entschuldigung dafür, ich konnte nicht widerstehen. Yo Dawg, ich habe gehört, dass du Objekte magst, also lege ich ein Objekt in dein Objekt, damit du widersprechen kannst, während du abnimmst. – Kibbee
kibbee, ein +1 reicht nicht aus, um zu erklären, wie sehr ich mich an diesem einfachen Kommentar genau hingelegt habe ... –
ob-ception !!!!! –