Ir al contenido principal

Groovy: anotaciones de clase

Programar en Groovy puede ser tan sencillo como hacerlo en Java, incluso un poco más. Sin embargo, Groovy no escapa de las convencionalidades de la escritura tipo código Java. 

Las clases Groovy poseen constructores que no necesariamente deben ser escritos, los metodos de asignación y de obtención (setters y getters) pueden o no ser definidos. 

Existen alternativas como lombok, pero en este ejemplo usaremos las anotaciones propias de Groovy para definir constructores, métodos toString, etc. 

La clase sin anotaciones:
Persona.groovy
class Persona{
	int id
	String nombre
	String apellidos
	int edad
}
Este código es funcional, sin embargo poco descriptivo. En Java tendríamos que crear los métodos setters, getters, toString, etc.
Persona.java
public class Persona{
	private int id;
	private String nombre;
	private String apellidos;
	private int edad;

       public Persona(){}

       public Persona(int id, String nombre, String apellidos, int edad){
           super();
           this.nombre = nombre;
           this.apellidos = apellidos;
           this.edad = edad;
       }
    // Métodos setters y getters

    // Métodos toString, etc.

}
Anotaciones:
@ToString
@EqualsAndHashCode
@TupleConstructor

Estas anotaciones nos ayudan a definir los métodos y constructores de la clase. La clase con anotaciones.

Estas deberán ser importadas:
import groovy.transform.EqualsAndHashCode
import groovy.transform.ToString
import groovy.transform.TupleConstructor

Persona.groovy
@ToString
@EqualsAndHashCode
@TupleConstructor
class Persona{
	int id
	String nombre
	String apellidos
	int edad
}
Como se puede ver estas anotaciones ayudan a indicar que la clase Persona.groovy poseee los métodos y constructores definidos y listos para usar sin la necesidad de escribir más líneas de código.

Comentarios