Consider the following case:
SomeType object;
if( whateverCondition ) {
object = getObjectOneWay();
} else {
object = getObjectAnotherWay();
}
this way it's clear that both branches assign the variable and its initial value is irrelevant. It's rarely worth that however.