Java, определяющий или инициализирующий атрибуты класса

Есть ли разница междуопределяющий атрибуты класса иинициализация их? Есть ли случаи, когда вы хотите сделать одно над другим?

Пример:

Следующие фрагменты кода должны указать на разницу, которую я имею в виду. Я использую примитив и объект там:

import Java.util.Random;

public class Something extends Activity {
    int integer;
    Random random = null;

    Something(){
        integer = 0;
        random = new Random();
        ....

против

import Java.util.Random;

public class Something extends Activity {
    int integer = null;
    Random random;

    Something(){
        integer = 0;
        random = new Random();
        ....

Ответы на вопрос(3)

Ваш ответ на вопрос