Mostrando postagens com marcador public. Mostrar todas as postagens
Mostrando postagens com marcador public. Mostrar todas as postagens

sexta-feira, 3 de fevereiro de 2012

O que é NullPointerException ?

 

"Quem nunca tomou um NullPointerException atire o primeiro mouse."

Quando uma pessoa começa a caminhar o longo caminho do mundo da programação um erro comum com qual se defronta é com o famoso e não querido NullPointerException, mas o que vem a ser esse obstaculo na vida de um programador e como resolvê-lo ? Para resolver tais estão publiquei essa essa dica que explica de forma bem simples o que é e como resolver um caso simples de NullPointerException.


Como ocorre ?

O NullPointerException ou NullPointer para os mais íntimos ocorre quando tenta-se utilizar um atributo ou método de um objeto que não fora inicializado. (Que esteja no estado null). Um exemplo pode ser visto no código abaixo:


package com.blogspot.maguscode;

public class TesteNullPointer {

   
    public static void main(String args[])
    {
        Carro carro = null;
        carro.setMarca("Gol");
        System.out.println("Marca do carro é:"+carro.getMarca());
    }
}


Quando esse código é executando o resultado é um NullPointerException como pode ser visto na figura abaixo:



 Neste caso o objeto Carro não foi instaciado e seu estado permaneceu nulo, quando foi tentado inserir um valor a seu atributo marca foi lançado um NullPointerException pois o objeto Carro em questão não existia em lugar algum. É como se tenta-se localizar uma casa com um determinado número em uma cidade que não existe.
De grosso modo o NullPointer acontece quando tentamos acessar um atributo em um objeto que não existe.


Como solucionar ?

Uma solução para matar o NullPointer seria verificar se o objeto está instancianciado caso não esteja instancia-lo ou simplismente instância-lo quando o mesmo for criado como no exemplo abaixo:



package com.blogspot.maguscode;

public class TesteNullPointer {

   
    public static void main(String args[])
    {
        Carro carro = new Carro();
        carro.setMarca("Gol");
        System.out.println("Marca do carro é:"+carro.getMarca());
    }


 




 
 

quinta-feira, 19 de agosto de 2010

Acessos em java: private ,protected e public

Resumo:

public - Acesso total.
private - Acesso somente na classe.
protected - Acesso na classe e em suas classes filhas.








Em Java e muitas outras linguagens de programação existe o conceito de acesso a métodos e variáveis. Levando em conta no aspecto java posso citar as seguintes:

public

Este tipo de acesso faz com que o método possa ser acessado por todos as outras classes e métodos sem quaisquer restrição.

protected

Este tipo de acesso limita o acesso de maneira que somente as classes filhas e os métodos das próprias classes que a contenham possa acessa-la.    

private

Este tipo de acesso limita totalmente o acesso sendo possivel o acesso somente dentro da própria classes, impossibilitando o acesso de outras classes até mesmo de suas classes filhas.