Sie sind auf Seite 1von 9

PROBLEMA HERENCIA

package herencia;

public abstract class Geometria {

abstract public double perimetro();

abstract public double area();

package herencia;

public class Circulo extends Geometria {

static int numCirculos =0;

public static final double PI = 3.141592653;

public double x,y,r;

public Circulo(double x , double y ,double r){

this.x=x;this.y=y;this.r=r;

numCirculos++;

public Circulo(double r){

this(0.0,0.0,r);

}
public Circulo(Circulo c ){

this(c.x,c.y,c.r);

public Circulo(){

this(0.0,0.0,1.0);

public double perimetro(){

return 2.0*PI*r;

public double area(){

return PI*r*r;

// metodo de objetos comparar circulos

public Circulo elMayor(Circulo c){

if(this.r>= c.r){

return this;

}else return c;

// metodo de clases para comparar circulos

public static Circulo elMayor( Circulo c , Circulo d ){

if(c.r >= d.r) return c ; else return d;

}
}

package herencia;

public class Rectangulo extends Geometria {

private static int numRectangulos = 0;

protected double x1,y1,x2,y2;

public Rectangulo ( double p1x, double p1y , double p2x , double p2y){

x1 = p1x;

x2 = p2x;

y1 = p1y;

y2 = p2y;

numRectangulos ++;

public Rectangulo(){this(2,3,1.0,1.0);}

public double perimetro() {

return 2.0*((x1-x2)+(y1-y2));

public double area() {

return (x1-x2)*(y1-y2);
}

package herencia;

public class Aplicacion {

public static void main(String[] args){

int pos =0;

Circulo[] c = new Circulo[4];

c[0] = new Circulo (4.0);

c[1] = new Circulo();

c[2] = new Circulo (1,1,5);

c[3]= new Circulo(c[2]);

for(int i=0;i<c.length;i++){

System.out.println("El perimetro del circulo "+ i +" es :" + c[i].perimetro());

System.out.println("El area del circulo "+ i +" es : " + c[i].area());

/*int k=1;

for(int i=0;i<c.length;i++){

if(c[i] == c[i].elMayor(c[k])){

pos = i;

}else pos= kg ;

*/

Rectangulo[] r = new Rectangulo[2];


r[0] = new Rectangulo();

r[1] = new Rectangulo(5,9,1,6);

for(int i=0;i<r.length;i++){

System.out.println("El perimetro del rectangulo "+ i + " es :" + r[i].perimetro());

System.out.println("El area del rectangulo "+i +"es : " + r[i].area());

RESULTADO
run:

El perimetro del circulo 0 es :25.132741224

El area del circulo 0es : 50.265482448

El perimetro del circulo 1 es :6.283185306

El area del circulo 1es : 3.141592653

El perimetro del circulo 2 es :31.41592653

El area del circulo 2es : 78.539816325

El perimetro del circulo 3 es :31.41592653

El area del circulo 3es : 78.539816325

El perimetro del rectangulo 0 es :6.0

El area del rectangulo 0es : 2.0

El perimetro del rectangulo 1 es :14.0

El area del rectangulo 1es : 12.0

BUILD SUCCESSFUL (total time: 0 seconds)


PROB ARREGLOS CLASE CLISTA
package Arreglos;

public class CLista {

private CLibro[] lista ; // matriz de objetos

private int nElementos;

private void unElementomas(CLibro [] listaActual){

nElementos = listaActual.length;

lista = new CLibro[nElementos +1];

for(int i=0;i<nElementos ;i++){

lista[i]= listaActual[i];

nElementos ++;

private void unElementomenos(CLibro[] listaActual){

if (listaActual.length == 0)return;

int k=0;

nElementos = listaActual.length;

lista = new CLibro[nElementos-1];

for(int i=0;i<nElementos;i++){

if(listaActual[i]!= null){

lista[k++]=listaActual[i];

nElementos--;

}
public CLista(){

nElementos=0;

lista = new CLibro[nElementos];

// metodos public

public void ponerValorEn( int i,CLibro Objeto){

if(i>=0 && i< nElementos)

lista[i]= Objeto;

else

System.out.println("Indice fuera del intervalo");

public CLibro ValorEn(int i){

if(i>=0 && i< nElementos)

return lista[i];

else {

System.out.println("Indice fuera del intervalo ");

return null;

public int longitud(){

return nElementos;

public void agregar ( CLibro Objeto ){

unElementomas(lista);
ponerValorEn(nElementos -1 , Objeto);

public boolean eliminar(String Id){

for(int i=0;i<nElementos;i++){

if(lista[i].obtenerIdLibro()==Id){

lista [i]= null;

unElementomenos(lista);

return true;

return false;

public int buscar(String str , int pos){

String titulo;

if(str == null) return -1;

if(pos<0) pos =0;

for ( int i=pos;i<nElementos;i++){

titulo = lista[i].obtenerTitulo();

if(titulo==null) continue;

if(titulo.indexOf(str)>-1)

return i;

return -1;

}
package Arreglos;

public class CLibro {

String Id;

String Titulo;

public String obtenerIdLibro(){

return Id;

public String obtenerTitulo(){

return Titulo;

Das könnte Ihnen auch gefallen