Diferença Entre Implementos E Extensões

Diferença Entre Implementos E Extensões
Diferença Entre Implementos E Extensões
Anonim

Implementos vs extensões

Implementos e Extensões são duas palavras-chave encontradas na linguagem de programação Java que fornecem um meio de transferir funcionalidades adicionais para uma nova classe. A palavra-chave Implements é usada explicitamente para implementar uma interface, enquanto a palavra-chave Extends é usada para herdar de uma (super) classe. Observe que os conceitos de herança e interfaces estão presentes na maioria das outras linguagens de programação orientadas a objetos, como C # e VB. NET, mas eles oferecem sintaxe ou palavras-chave diferentes para aplicar esses conceitos. Este artigo se concentra apenas nas palavras-chave Implementações e Extensões definidas em Java.

Estende

A palavra-chave Extends é usada para implementar o conceito de herança na linguagem de programação Java. A herança fornece essencialmente a reutilização de código, permitindo estender as propriedades e o comportamento de uma classe existente por uma classe recém-definida. Quando uma nova subclasse (ou classe derivada) estende uma superclasse (ou classe pai), essa subclasse herdará todos os atributos e métodos da superclasse. A subclasse pode substituir opcionalmente o comportamento (fornecer funcionalidade nova ou estendida aos métodos) herdado da classe pai. Uma subclasse não pode estender várias superclasses em Java. Portanto, você não pode usar extensões para herança múltipla. Para ter herança múltipla, você precisa usar interfaces conforme explicado abaixo.

Implementos

A palavra-chave Implements na linguagem de programação Java é usada para implementar uma interface por uma classe. Uma interface em Java é um tipo abstrato usado para especificar um contrato que deve ser implementado por classes, que implementam essa interface. Normalmente, uma interface conterá apenas assinaturas de método e declarações de constantes. Qualquer interface que implemente uma interface específica deve implementar todos os métodos definidos na interface ou deve ser declarada como uma classe abstrata. Em Java, o tipo de uma referência de objeto pode ser definido como um tipo de interface. Mas esse objeto deve ser nulo ou deve conter um objeto de uma classe, que implementa essa interface específica. Usando a palavra-chave Implements em Java, você pode implementar várias interfaces para uma única classe. Uma interface não pode implementar outra interface. No entanto, uma interface pode estender uma classe.

Diferença entre implementos e extensões

Embora, Implements e Extends sejam duas palavras-chave que fornecem um mecanismo para herdar atributos e comportamento para uma classe na linguagem de programação Java, eles são usados para dois propósitos diferentes. A palavra-chave Implements é usada para uma classe para implementar uma determinada interface, enquanto a palavra-chave Extends é usada para uma subclasse estender a partir de uma superclasse. Quando uma classe implementa uma interface, essa classe precisa implementar todos os métodos definidos na interface, mas quando uma subclasse estende uma superclasse, ela pode ou não substituir os métodos incluídos na classe pai. Finalmente, outra diferença importante entre Implements e Extends é que, uma classe pode implementar várias interfaces, mas só pode estender a partir de uma superclasse em Java. Em geral, o uso de Implementos (interfaces) é considerado mais favorável em comparação com o uso de Extensões (herança),por várias razões, como maior flexibilidade e capacidade de minimizar o acoplamento. Portanto, na prática, a programação para uma interface é preferível em vez de estender a partir de classes básicas.

Recomendado: