Java/Herança

Origem: Wikilivros, livros abertos por um mundo aberto.

Em java a herança é realizada de maneira simples ao utilizar a palavra chave extends:

Exemplo:

package academico;

public abstract class Pessoa {
    public String strNome;
    public String strTelefone;
// Métodos
    public void getStrNome(String Nome) {
        this.StrNome = Nome;
    }
    public String setStrNome() {
        return StrNome;
    }
}

public class Aluno extends Pessoa {
    // strNome e strTelefone, bem como seus metodos são herdados nesta calasse por meio da palavra "extends"

}


Quando uma classe é criada como sub-classe de outra classe, a palavra-chave super é usada para que a sub-classe possa acessar métodos public ou protected (mas não private) da superclasse. super também é usado para invocar o constructor da superclasse, durante o constructor da subclasse.

Sintaxe:

  super.<method_name>(<argumentos>);

ou

  super(<argumentos>); //Em contrutor

Outro exemplo:

public class SuperClass
{
   SuperClass(String title)
   {
      System.out.println( "Super: " + title );
   }

   public void printHello()
   {
      System.out.println( "Hello from SuperClass" );
     return;
   }
}

public class SubClass extends SuperClass
{
   SubClass(String title)// constructor
   {
       super(title);  // chama o constructor de Frame
   }
   public void printHello()
   {
      super.printHello();
      System.out.println( "Hello from SubClass" );
     return;
   }

   public static main( String[] args )
   {
      SubClass obj = new SubClass();
      obj.printHello();
   }
}