¿Por qué la clase Cat usa Cat parent como variable de instancia?

Echa un vistazo a las líneas en tu mainmétodo ...

Esta línea crea una nueva Catcon un nombre (que fue definido por la entrada anterior):

Cat catMother = new Cat(motherName);

mientras que la siguiente línea también crea un nuevo Cat, pero usa un constructor diferente (el que tiene dos argumentos):

Cat catDaughter = new Cat(daughterName, catMother);

Si solo lee los nombres de los argumentos, puede ver claramente una relación ... El uso de este constructor le da al nuevo Catun nombre (hija) y un pariente (madre). Este pariente se almacena como un atributo en la Catclase. Por lo tanto, cada instancia de Cattiene otro Catcomo padre o null(este último podría conducir a algunos problemas diferentes).

Luego eche un vistazo a los atributos de clase de Cat, aquí es donde se establecen los valores (o no):

private String name; // this is where the name of the cat object is stored
private Cat parent;  // this is where mother or father is stored (yes, only one possible at a time)

Es bastante común en Java tener una instancia de alguna clase que tenga otra instancia de la misma clase que un atributo, que no es nada diferente a un objeto de la clase String, solo otro tipo de objeto.

Respuesta 1

Tengo un almacén de valores-clave en memoria (probablemente de hasta 1 GB de tamaño), donde mapeo Cadena a una Cadena. Hasta ahora se ha implementado como Map <String, String>. Sin embargo, hay un caso raro en el que yo '...

Estoy tratando de usar este comando: git checkout `git rev-list -n 1 --before =" 2009-07-27 13:37 "master` que estoy ejecutando a través de ProcessBuilder. Ahora, sé que el resto de mi código funciona, ya que tengo ...

Cómo renderizar Jpeg2000 (.jp2) a ImageView en Android He estado trabajando desde hace mucho tiempo, pero no pude encontrar la solución adecuada, encontré algunos nombres de imagen de imagen jp2 pero no pude ...

Hola, soy estudiante y en mi clase estamos programando un pequeño juego de serpientes, ahora el problema es que algunas veces, cuando se come una manzana, el juego se congela, descubrimos que es causada por 2 ...