Resposta tardia, mas acho que acrescenta algo novo a esse tópico.
Nenhuma das respostas anteriores respondeu à pergunta original. Alguns tentaram justificar a falta de uma constante, enquanto outros mostraram maneiras pelas quais podemos lidar com a falta da constante. Mas ninguém forneceu uma justificativa convincente para o benefício da constante; portanto, sua falta ainda não é explicada adequadamente.
Uma constante seria útil porque impediria que certos erros de código passassem despercebidos.
Digamos que você tenha uma grande base de código com centenas de referências a "". Alguém modifica um deles enquanto percorre o código e o altera para "". Essa mudança teria uma grande chance de passar despercebida para a produção; nesse momento, poderá causar algum problema cuja fonte será difícil de detectar.
OTOH, uma constante de biblioteca denominada EMPTY, se sujeita ao mesmo erro, geraria um erro de compilador para algo como EM PTY.
Definir sua própria constante ainda é melhor. Alguém ainda pode alterar sua inicialização por engano, mas devido ao seu amplo uso, o impacto de um erro desse tipo seria muito mais difícil de passar despercebido do que um erro em um único caso de uso.
Esse é um dos benefícios gerais que você obtém ao usar constantes em vez de valores literais. As pessoas geralmente reconhecem que usar uma constante para um valor usado em dezenas de lugares permite que você atualize facilmente esse valor em apenas um lugar. O que é menos frequentemente reconhecido é que isso também impede que esse valor seja acidentalmente modificado, porque essa alteração seria exibida em todos os lugares. Portanto, sim, "" é menor que VAZIO, mas VAZIO é mais seguro de usar que "".
Portanto, voltando à pergunta original, podemos apenas especular que os projetistas de linguagem provavelmente não estavam cientes desse benefício de fornecer constantes para valores literais que são freqüentemente usados. Felizmente, um dia veremos constantes de string adicionadas em Java.
outputBlah = ""
, e provavelmente ele preferesomething == String.Empty
maissomething.Length > 0
bem (você pular um cheque nulo.)