Java
Home

Polimorfismo

Exemplos de Polimorfismo

/*
* CAlien.java
*
* Created on 24 de Janeiro de 2007, 20:04
*/

package polimorfismo;

/**
*
* @author adrw
*/

public abstract class CAlien {

  private int forca;

  /** Creates a new instance of CAlien */
  public CAlien( int vforca )
  {

    if ( vforca == 0 )
    {
       vforca = 10;
    }

    this.setForca( vforca );
  }

  public int getForca()
  {
    return forca;
  }

  public void setForca( int vforca )
  {
    forca = vforca;
  }

  public abstract int ataque();
}


/*
* CBoss.java
*
* Created on 24 de Janeiro de 2007, 20:12
*/

package polimorfismo;

import polimorfismo.CAlien;

/**
*
* @author adrw
*/

public class CBoss extends CAlien {

  /** Creates a new instance of CBoss */

  public CBoss() {
    super(20);
  }

  public int ataque()
  {
    int total = 0;
    total = getForca();
    total = total + 10;

    return total;
  }

}


/*
* CTroop.java
* A tropa
* Created on 24 de Janeiro de 2007, 20:07
*/

package polimorfismo;

import polimorfismo.CAlien;

/**
*
* @author adrw
*/

public class CTroop extends CAlien {

  /** Creates a new instance of CTroop */
  public CTroop() {
    super(0);
  }

  public int ataque()
  {
    int total = 0;
    total = getForca();
    total += 10;

    return total;
  }


}


/*
* Main.java
*
* Created on 24 de Janeiro de 2007, 20:03
*/

package polimorfismo;

import polimorfismo.*;
/**
*
* @author adrw
*/

public class Main {

  /** Creates a new instance of Main */
  public Main() {
  }

  /**
  * @param args the command line arguments
  */

  public static void main(String[] args) {
    // TODO code application logic here

    // tipo um ponteiro
    CAlien referencia;
  
    CBoss chefe = new CBoss();
    CTroop tropa = new CTroop();

    referencia = chefe;

    System.out.println( "Ataque do chefe: " );
    System.out.println( referencia.ataque() );

    referencia = tropa;

    System.out.println( "Ataque da tropa: " );
    System.out.println( referencia.ataque() );

  }

}