Pular para o conteúdo principal
Documentos
Palavras-chave JavaMatrizes JavaProgramação orientada a objetos em JavaManuseio de arquivos JavaIntrodução ao JavaNoções básicas da linguagem Java

palavra-chave padrão em Java

A palavra-chave default em Java tem vários usos, principalmente em instruções switch e métodos de interface. Ele fornece um caso padrão em instruções switch e permite que os métodos em interfaces tenham uma implementação padrão.

Uso

1. Caso padrão em instruções Switch

Em uma instrução switch, a palavra-chave default especifica o bloco de código a ser executado se nenhum case corresponder à expressão switch.

2. Métodos padrão em interfaces

Nas interfaces, a palavra-chave default permite a criação de métodos com uma implementação padrão. Esse recurso, introduzido no Java 8, permite que as interfaces evoluam sem quebrar as implementações existentes.

Sintaxe

Declaração de troca

switch (expression) {
    case value1:
        // code block
        break;
    case value2:
        // code block
        break;
    default:
        // default code block
}

Métodos padrão em interfaces

public interface InterfaceName {
    default void methodName() {
        // default implementation
    }
}

Exemplos

Exemplo 1: Caso padrão na instrução Switch

public class DefaultSwitchExample {
    public static void main(String[] args) {
        int day = 5;
        switch (day) {
            case 1:
                System.out.println("Monday");
                break;
            case 2:
                System.out.println("Tuesday");
                break;
            // other cases
            default:
                System.out.println("Invalid day");
                break;
        }
    }
}

Neste exemplo, o caso default é executado se o valor de day não corresponder a nenhum dos casos especificados.

Exemplo 2: Método padrão na interface

public interface MyInterface {
    default void display() {
        System.out.println("Default display method");
    }
}

public class DefaultMethodExample implements MyInterface {
    public static void main(String[] args) {
        DefaultMethodExample example = new DefaultMethodExample();
        example.display(); // Calls the default method
    }
}

Aqui, a interface MyInterface tem um método padrão display(). A classe DefaultMethodExample implementa essa interface, mas não substitui o método display(), portanto, a implementação padrão é usada.

Exemplo 3: Substituição do método padrão

public interface MyInterface {
    default void display() {
        System.out.println("Default display method");
    }
}

public class OverrideDefaultMethodExample implements MyInterface {
    @Override
    public void display() {
        System.out.println("Overridden display method");
    }

    public static void main(String[] args) {
        OverrideDefaultMethodExample example = new OverrideDefaultMethodExample();
        example.display(); // Calls the overridden method
    }
}

Neste exemplo, a classe OverrideDefaultMethodExample substitui o método padrão display() fornecido pela interface MyInterface.

Dicas e práticas recomendadas

  • Trocar declarações: Sempre inclua um default case nas instruções switch para lidar com valores inesperados.
  • Evolução da interface: Use métodos padrão em interfaces para adicionar novos métodos sem interromper as implementações existentes.
  • Manipulação de herança múltipla: Quando várias interfaces têm métodos padrão com o mesmo nome, a classe de implementação deve resolver a ambiguidade substituindo o método.
  • Substituir com cuidado: Quando você substituir os métodos padrão, certifique-se de que a nova implementação não rompa o contrato existente da interface.
  • Documentação: Documente claramente o comportamento dos métodos padrão para evitar confusão para os usuários da interface.

Learn Java Essentials

Desenvolva suas habilidades em Java desde o início e domine os conceitos de programação.
Comece a aprender de graça