O que é abstração de dados em Java?

Abstração de dados em java é o conceito de criar tipos de dados complexos e apenas selecionar operações relevantes para interagir com esse tipo de dados. Abstração é um componente central da programação orientada a objetos

Cada linguagem OOP tem sua própria maneira de implementar abstração. A ideia geral por trás da abstração é selecionar apenas as propriedades importantes de um objeto relevante para a tarefa atual, enquanto oculta as não importantes.

Em Java, a abstração de dados é implementada usando a palavra-chave abstract ao declarar uma classe ou método. Uma classe abstrata em Java é um tipo especial de classe que não pode ser instanciada.

Observe que abstração e encapsulamento não são iguais, embora sejam facilmente confundidos. Encapsulamento é o conceito de agrupar propriedades e métodos do objeto.