Crear una clase en Groovy

10/Feb/2014 Groovy Deja un comentario

En esta ocasión crearemos una clase en Groovy, al igual que en Java se debe usar la palabra class.

Clase en Groovy

class Computadora{
...
...
}

Nuestra clase en Groovy tendrá dos atributos:

String marca
String modelo

Por defecto estos atributos serán accesibles desde cualquier otra clase en Groovy. Si quiero crear otra clase en Groovy que acceda a esos atributos tengo que usar la palabra extends.

class Computadora_Portatil extends Computadora{
...
...
}

A esta nueva clase en Groovy le coloco otros dos atributos:

String memoria
String procesador

El código de ambas clases en Groovy quedaría de la siguiente forma:

//clase base
class Computadora{
	String marca
	String modelo
}

//clase hija
class Computadora_Portatil extends Computadora{
	String memoria
	String procesador
}

Constructor de una clase en Groovy

Podemos crear un constructor para cada clase en Groovy:

//clase base
class Computadora{
  //constructor
  Computadora(){}
}

//clase hija
class Computadora_Portatil extends Computadora{
  //constructor
  Computadora_Portatil(){}
}

Método main de una clase en Groovy

Ahora escribimos el «main» de nuestra clase en Groovy:

static main(args){
  //nota: no es necesario
}

Instancia de una clase en Groovy

static main(args){
  	def miPC=new Computadora() 
}

También podemos hacerlo de esta forma:

static main(args){
   def miPC= new Computadora(marca:"DELL",modelo:"1501")

  //mostramos los valores
  println "Mi PC:"
  println "marca >> ${miPC.marca} , modelo >> ${miPC.modelo}"

}

Existe también la alternativa de usar la palabra with para llenar los atributos de la clase en Groovy:

static main(args){
//en este caso usamos la clase hija
def miPortatil=new Computadora_Portatil()
miPortatil.with{
	memoria="1.7GiB"
	procesador="AMD V120 Processor"
}

//mostramos los valores
println "Mi PC portatil:"
println "memoria >> ${miPortatil.memoria} , procesador >> ${miPortatil.procesador}"

}

Espero que os haya gustado el artículo sobre cómo crear una clase en Groovy.

¿Algo que nos quieras comentar?

Déjanos tu comentario, no te preocupes que tu email no será publicado

*

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.