Skip to content

Instantly share code, notes, and snippets.

@oscarryz
Last active September 24, 2015 23:09
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save oscarryz/48cfb20b88c6dfb6f342 to your computer and use it in GitHub Desktop.
Save oscarryz/48cfb20b88c6dfb6f342 to your computer and use it in GitHub Desktop.
import lombok.Data;

@Data
class Empleado {
    private final Departamento departamento;
    private final String nombre;
}

@Data
class Departamento {
    private final String nombre;
}

class Main {
    public static void main( String ... args ) {
        Departamento d = new Departamento("contabilidad");
        Empleado e = new Empleado( d, "juanito" );
        System.out.println(e);
    }
}

Compilar:

~/c/j/private $ javac -cp lombok.jar  Empleado.java
~/c/j/private $ javap Empleado Departamento

Lombok genera estos métodos:

Compiled from "Empleado.java"
class Empleado {
  public Empleado(Departamento, java.lang.String);
  public Departamento getDepartamento();
  public java.lang.String getNombre();
  public boolean equals(java.lang.Object);
  protected boolean canEqual(java.lang.Object);
  public int hashCode();
  public java.lang.String toString();
}
Compiled from "Empleado.java"
class Departamento {
  public Departamento(java.lang.String);
  public java.lang.String getNombre();
  public boolean equals(java.lang.Object);
  protected boolean canEqual(java.lang.Object);
  public int hashCode();
  public java.lang.String toString();
}

Ejecutar normalmente:

~/c/j/private $ java Main
Empleado(departamento=Departamento(nombre=contabilidad), nombre=juanito)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment