terça-feira, 4 de janeiro de 2011

Interface Java

package Interface;

public interface Familia
{
public abstract void pai();
abstract public void mae();
}

---------------------------------------------------------------------------------

public class Filho implements Familia
{
public void pai()
{
System.out.println("pai");
}
public void mae()
{
System.out.println("mae");
}
public static void main(String[] args)
{

Filho f= new Filho();
f.mae();
f.pai();
}

}

Interface : ao criar um interface você, estará definindo um contrato com o que a classe deve fazer, sem mencionar
nada como a classe o fará.

A interface pode ser implementada por qualquer classe de qualquer arvore de herança. Isso permitirá que você use
classes radicalmente diferentes e forneça a elas uma caracteristica em comun.
Por exemplo :
Vamos criar uma inteface Voavel. Ela poderia ser implementada por uma mosca, por um avião e por uma classe chamada tiro de canhão.


Uma interface deve ser considerada como uma classe totalmente ABSTRACT.
Uma interface só pode definir métodos ABSTRACT
As interfaces são implicitamente ABSTRACT, colocar esse modificador é opcional;
Uma interface NÂO pode ter o modificador PRIVATE ou PROTECTED;
Uma interface pode estender várias interfaces isso mesmo, a palavra usada é "extends";
Uma interface NÂO pode implementar outra interface ou classe (parece estranho, mas uma interface estende outras interfaces);
Uma classe que implementa uma interface não pode declarar nenhuma EXCEÇÃO "EXCEPTION" nova, ou mais abrangente, mas pode declarar exceções de tempo de execução em qualquer método;
Os métodos declarados em uma interface não podem ser STATIC;
Os métodos da interface não podem ser marcados com FINAL, NATIVE, STRICTFP ou SYNCHRONIZED ;
As declarações public, static e final são opcionais;
uma interface pode ser extendida por outra interface.

uma interface com o modificador PUBLIC possui visualidade total
uma interface sem o modificador PUBLIC, é atribuida como DEFAULT, e só é visivel apenas para classes e interfaces que estão
no mesmo pacote "PACKAGE".

Métodos em interface sempre são PUBLIC ABSTRACT, quando não escrito, está implicito.

Todas as váriaveis que são declaradas em uma interface são constantes(PUBLIC STATIC FINAL), é possível
reaproveitar os valores das constantes declaradas
em interfaces apenas como valores para leitura, lembrando, como são constantes após atribuido os valores
não é possível ser alterado.

Todo método de interface é terminado com parenteses e ponto virgula();



public interface Filho extends Familia
OBS : Filho estará herdando todos os atributos e métodos da interface Familia


Formas que são possível declarar constantes :

public static final String nome ="Gilberto";
static public final String sobrenome = "Messias";
public final String sobrenome1 = "Da Costa Junior";
static boolean sexo = true;

Nenhum comentário:

Postar um comentário