Diferença entre final final e final em Java

Diferença-chave - final vs finally vs finalize em Java
 

O final, finalmente e finalizar são termos comuns usados ​​na programação Java. A final é uma palavra-chave. Pode ser usado para variáveis, métodos ou classes. As variáveis ​​declaradas como finais devem ser inicializadas apenas uma vez. Eles não podem ser alterados. Como Java é uma linguagem que suporta Programação Orientada a Objetos, permite criar classes a partir de classes existentes para melhorar a reutilização de código. Às vezes, pode ser necessário evitar o uso das classes existentes. Para isso, final pode ser usado. Na programação, pode haver erros, e é importante lidar com eles para executar o programa corretamente. O finalize é um método chamado pelo coletor de lixo. Portanto, todos esses termos têm significados diferentes de acordo. O final é uma palavra-chave que impede a alteração de variáveis, evita a substituição de métodos e a extensão de classes. Finalmente, é um bloco no tratamento de exceções, que executará se uma exceção é lançada ou não. O finalize é um método, chamado pelo coletor de lixo antes de destruir completamente o objeto. Esse é o diferença chave final finalmente e finalizar em Java.

CONTEÚDO

1. Visão geral e principais diferenças
2. O que é final em Java
3. O que está finalmente em Java
4. O que é finalizado em Java
5. Semelhanças entre final final e final em Java
6. Comparação lado a lado - final finalmente versus finalização em Java em forma de tabela
7. Resumo

O que é final em Java?

A final é uma palavra-chave em Java. Como o Java suporta a programação orientada a objetos, as subclasses podem usar as variáveis ​​e os métodos de uma classe já existente. A classe já existente é a superclasse enquanto a nova classe é a subclasse. Se o programador quiser impedir a variável acessível por outras classes, ele pode declarar a variável como 'final'. Por exemplo, suponha que haja uma variável como p. É declarado como final e inicializa o valor 10. p. final int p = 10. Se o valor de p for alterado novamente para 20, ele causará um erro em tempo de compilação. A palavra-chave final impede a alteração do valor da variável.

Uma classe pode usar um método que já está em uma classe existente. Suponha que exista uma classe chamada B que possua um método display (). A nova classe é C e estende a classe B. Se a classe C também tiver um método chamado display (), o método original da classe B display () será substituído. Se o programador quiser evitar que o método seja substituído, ele poderá usar a palavra-chave finalmente. por exemplo. exibição final nula () . A finalização de um método garante que a funcionalidade do método nunca seja alterada.

Figura 01: final, final e finalização

Também é possível usar a palavra-chave final para uma classe. A nova classe não pode herdar variáveis ​​e métodos de uma classe final. Isso é útil para aumentar a segurança. Como a classe está sendo impedida de usar pelas subclasses, os dados são protegidos.

O que está finalmente em Java?

Na programação, pode haver erros. Erros podem causar resultados incorretos ou finalizar a execução de um programa. É importante usar algum tipo de mecanismo para evitar esses resultados inesperados. Os erros podem ser de dois tipos. Eles são erros de tempo compilados e erros de tempo de execução. Erros de tempo de compilação ocorrem devido a erros sintáticos. Alguns erros comuns em tempo de compilação estão faltando o ponto-e-vírgula, chaves, identificadores de erros ortográficos, palavras-chave e variáveis ​​não declaradas. O compilador não criará o arquivo .class até que esses erros sejam corrigidos.

Às vezes, pode haver programas que são compilados corretamente, mas fornecem resultados errados. Eles são chamados de erros de tempo de execução. Alguns erros comuns de tempo de execução estão mergulhando um número inteiro por zero e acessando um elemento que está fora dos limites de uma matriz. Esses erros não causarão um erro no tempo de compilação, mas a saída está incorreta. Uma exceção é uma condição causada por um erro de tempo de execução no programa.

Quando há um erro de tempo de execução, o Java cria um objeto de exceção e o lança. Se o objeto de exceção não for capturado corretamente, ele exibirá uma mensagem de erro e encerrará o programa. Se o programador quiser continuar a execução do programa com o restante do código, ele deve capturar o objeto de exceção e exibir a mensagem necessária para a ação corretiva. Esse processo é conhecido como tratamento de exceção.

Em Java, try é usado para o código que provavelmente causa um erro e gera uma exceção. A captura é usada para manipular a exceção lançada pelo bloco try. Pode haver várias instruções de captura. As instruções finalmente podem ser usadas para manipular uma exceção que não é capturada por nenhuma das instruções de captura anteriores. O bloco finalmente será executado se uma exceção for lançada ou não. Consulte o exemplo dado.

int p = 10, q = 5, r = 5;

int resposta;

experimentar

resposta = p / (q - r);

catch (ArithmeticException e)

System.out.println ("Dividido por zero");

finalmente

System.out.println (“O bloco finalmente é executado”);

De acordo com o exemplo acima, o valor p é dividido por zero e causará uma exceção. Portanto, é capturado pela instrução catch. Irá imprimir a mensagem, dividida por zero. O bloco final será executado se uma exceção ocorreu ou não. Após a mensagem Dividida por zero, a mensagem dentro do bloco final será exibida. Portanto, finalmente, é um bloco usado no tratamento de exceções.

O que é finalizado em Java?

No OOP, os objetos são criados usando classes. O método construtor pode inicializar um objeto quando ele é declarado. O processo é conhecido como inicialização. Java também tem um conceito chamado finalização. O tempo de execução Java é um coletor de lixo automático. Ele libera automaticamente os recursos de memória usados ​​pelos objetos. O coletor de lixo chama esse método antes de destruir o objeto.

Alguns objetos podem conter recursos não relacionados a objetos. Um exemplo é um descritor de arquivo. Nessas situações, o coletor de lixo chama o método finalize. por exemplo. finalizar(). Esse método executa o processamento de limpeza imediatamente antes da coleta de lixo do objeto.

Qual é a semelhança entre final finalmente e finalizar em Java?

  • Todos final, finalmente e finalizar em Java são usados ​​na programação Java

Qual é a diferença entre final final e final em Java?

final vs finalmente vs finalizar

final A final é uma palavra-chave em Java que impede a alteração de variáveis, evita a substituição de métodos e a extensão de classes.
finalmente Finalmente, é um bloco no tratamento de exceções Java, que executará se uma exceção é lançada ou não.
finalizar O finalize é um método em Java, chamado pelo coletor de lixo antes de destruir o objeto completamente.
Aplicabilidade
final O final é aplicável a variáveis, métodos e classes.
finalmente Finalmente, é aplicável com um try and catch blocks.
finalizar O finalize é aplicável a objetos.

Resumo - final vs finally vs finalize em Java

O final, finalmente e finalizar são termos comuns usados ​​na Programação Java. Suas palavras parecem as mesmas, mas elas têm uma diferença. A final é uma palavra-chave que impede a alteração de variáveis, evita a substituição de métodos e a extensão de classes. Finalmente, é um bloco no tratamento de exceções, que executará se uma exceção é lançada ou não. O finalize é um método, chamado pelo coletor de lixo antes que ele destrua o objeto completamente. Essa é a diferença entre final, finalmente e finalizar na programação em Java.

Faça o download do PDF de final vs finalmente vs finalize em Java

Você pode fazer o download da versão em PDF deste artigo e usá-la para fins offline, conforme nota de citação. Faça o download da versão em PDF aqui: Diferença entre Betweeen e finalmente finalize em Java

Referência:

1.Java Basics Part 1 - Q 20) Diferença Final Finalmente Finalize, JavaNoobs365, 13 de março de 2015. Disponível aqui