DEV Community

Capítulo 8 Pacotes e interfaces

O que vamos ver neste capítulo

Principais habilidades e conceitos
• Usar pacotes
• Entender como os pacotes afetam o acesso
• Aplicar o modificador de acesso protected
• Importar pacotes
• Conhecer os pacotes padrão Java
• Entender os aspectos básicos da interface
• Implementar uma interface
• Aplicar referências de interface
• Entender as variáveis de interface
• Estender interfaces
• Criar métodos de interface padrão e estático

Pacotes e Interfaces:
São recursos inovadores que ajudam na organização e encapsulamento do código.

  • Pacotes: Agrupam classes relacionadas e ajudam a organizar o código.
  • Interfaces: Definem métodos que uma classe deve implementar, especificando o que será feito, mas não como.

Pacotes
Funções dos pacotes:
Agrupam partes relacionadas de um programa em uma unidade organizada.
Controlam o acesso entre classes, permitindo encapsulamento.

Espaço de Nomes:
Evita colisões de nomes de classes, anexando o nome do pacote a cada classe.
Resolve o problema de nomeação em projetos grandes, evitando conflitos com nomes de outras classes ou bibliotecas.

Controle de Acesso:
Pacotes permitem que o código de classes relacionadas seja acessível dentro do mesmo pacote, mas privado para código externo.
Facilita a criação de grupos de classes autônomos e encapsulados.

Exemplo de Pacotes e Interfaces

src/
  mypackage/
    MyInterface.java
    MyClass.java
  Main.java

Enter fullscreen mode Exit fullscreen mode
  1. Definindo o Pacote e Interface (mypackage/MyInterface.java):
package mypackage;

// Definindo uma interface
public interface MyInterface {
    void sayHello();  // Método abstrato
}

Enter fullscreen mode Exit fullscreen mode
  1. Implementando a Interface em uma Classe (mypackage/MyClass.java):
package mypackage;

// Implementando a interface em uma classe
public class MyClass implements MyInterface {
    @Override
    public void sayHello() {
        System.out.println("Olá, Mundo! Implementando uma Interface.");
    }
}

Enter fullscreen mode Exit fullscreen mode
  1. Usando a Classe e Interface no Programa Principal (Main.java):
import mypackage.MyClass;  // Importando a classe do pacote 'mypackage'

public class Main {
    public static void main(String[] args) {
        MyClass myObject = new MyClass();  // Criando uma instância de MyClass
        myObject.sayHello();  // Chamando o método implementado
    }
}

Enter fullscreen mode Exit fullscreen mode

Explicação:

  • Pacote (mypackage): As classes e a interface estão organizadas no pacote mypackage, o que ajuda a estruturar o código e evitar colisões de nome.
  • Interface (MyInterface): Define um método abstrato sayHello que as classes que implementam a interface devem fornecer.
  • Classe (MyClass): Implementa a interface e fornece a definição do método sayHello.
  • Programa principal (Main): Usa a classe MyClass, que implementa a interface, para chamar o método.

Saída do programa:
Olá, Mundo! Implementando uma Interface.

Top comments (0)