Mas a questão é, por que os programadores não evitam esse tipo de erro?
Um exemplo bem comum desse erro:
Método algumaCoisa
Método main
Se por algum motivo o método algumaCoisa receber por parâmetro um objeto String que aponta para null, esse método irá lançar uma NullPointerException. O erro se dá por conta do objeto param chamar o método equals sem ter uma referência.
Então, para evitar esse erro faça:
Método algumaCoisa
Com certeza deve existir outras formas de evitar vários erros de NullPointerException, mas a principal falha é dos programadores, por não "visualizarem" esses erros nos seus códigos.
Um comentário:
eu tenho uma estratégia para lançar os erros sempre para as camadas superiores, afinal é sobretudo elas que tem o interesse de saberem se a coisa funfou ou não.
Crio uma estratégia tentando simular o conceito de Design by contract que é a base desse artigo do Shoes, onde o metodo testa o perímetro dos valores aceitáveis e lança uma exceção que é capturada por quem faz a chamada e então decide que estratégia lançar como uma mensagem a um usuário ou a chamada a um esquema de contenção (como o caso de perder a conexão ao banco por exmeplo e ficar offline)
Postar um comentário