Java - Clase Concreta
Concepto
-
Una
clase concreta
es unaclase
que tiene unaimplementación para todos sus métodos
-
No pueden tener
ningúnmétodo no implementado
-
También puede
extender
unaclase abstracta
oimplementar
unainterfaz
siempre queimplemente
todos
susmétodos
-
Es una
clase completa
y puede serinstanciada
-
Cualquier clase que no sea
abstracta
es unaclase concreta
-
Condición
necesaria para unaclase concreta
- Debe haber una
implementación
paratodos
y cada uno de losmétodos
- Debe haber una
Ejemplo
Clase Concreta : Básica
// Clase Concreta
class Suma {
public static int producto(int a, int b)
{
return a * b;
}
public static int sum(int a, int b)
{
return a + b;
}
// main method
public static void main(String args[])
{
int p = producto(5, 10);
int s = suma(5, 10);
System.out.println("Producto: " + p);
System.out.println("Suma: " + s);
}
}
Clase Concreta : Usando una Clase Abstracta
package rvs.ejemplo.clase.abstracta;
/**
* Clase Abstracta
*
* Contiene un método abstracto que sera heredado por las demás clases
* descendientes
*
* @author RVS
*
*/
public abstract class Formas {
/**
* Método abstracto que sera heredado por las clases descendientes
*
* @return - double - Devuelve el area de una forma concreta
*/
public abstract double area();
}
-
Clases Concretas Circulo y Rectángulo
que heredan de laClase Abstracta Formas
-
Clase Circulo
import rvs.ejemplo.clase.abstracta.Formas;
/**
* Clase Concreta : Circulo
*
* @author RVS
*
*/
public class Circulo extends Formas {
// Atributo de instancia
private double r;
/**
* Método heredado de la Clase Abstracta
*
* @return - double - Devuelve el area de un Circulo
*/
@Override
public double area() {
return 3.14159265358979323846 * (r * r);
}
}
- Clase Rectángulo
package rvs.ejemplo.clase.concreta;
import rvs.ejemplo.clase.abstracta.Formas;
/**
* Clase Concreta : Rectángulo
*
* @author RVS
*
*/
public class Rectangulo extends Formas {
// Atributos de Instancia
public double longitud;
public double ancho;
/**
* Devuelve la longitud * por el ancho
*
* @return - double - Devuelve el area de un Rectángulo
*/
@Override
public double area() {
return longitud * ancho;
}
}
Deja un comentario