NullPointerException or if statement

This isn’t really a problem I have, more of a question of what’s considered good practice. I recently realized that I can catch NullPointerExceptions, instead of using a if statement. So far I have only used it in places where I expect to not need and if statement, but I wonder is it right? and if not, when should I catch NullPointerException instead of using if’s?

There is one place where I used it like this

try{
    renderComponent[RENDER_BG].getImage().render(g2, x, y+7);
    renderComponent[RENDER_NAME].getImage().render(g2, x+5, y);
    renderComponent[RENDER_DATE].getImage().render(g2, 30+(textBreakWidth*1), y);
    renderComponent[RENDER_TIME].getImage().render(g2, (textBreakWidth*2)-renderComponent[RENDER_TIME].getImage().getWidth()+20, y);
}catch(java.lang.NullPointerException e){
    showingAnimation = false;
}

instead of

if(     renderComponent[RENDER_BG].getImage() != null &&
        renderComponent[RENDER_NAME].getImage() != null &&
        renderComponent[RENDER_DATE].getImage() != null && 
        renderComponent[RENDER_TIME].getImage() != null){
    renderComponent[RENDER_BG].getImage().render(g2, x, y+7);
    renderComponent[RENDER_NAME].getImage().render(g2, x+5, y);
    renderComponent[RENDER_DATE].getImage().render(g2, 30+(textBreakWidth*1), y);
    renderComponent[RENDER_TIME].getImage().render(g2, (textBreakWidth*2)-renderComponent[RENDER_TIME].getImage().getWidth()+20, y);
}else{
    showingAnimation = false;
}

In situations like that I feel like the try statement is much more useful than a if, it also makes the code a lot more readable.