Como parece que a resposta é que não existe um padrão único para isso em Java, gostaria de observar que as Diretrizes de Design do .NET Framework especificam isso.
Agora, antes de me criticar por estar fora do tópico, lembre-se de que as diretrizes de nomenclatura de classe para Java e .NET Framework são bastante semelhantes, o que torna as diretrizes .NET úteis como referência persuasiva.
Regras gerais
Ambas as diretrizes recomendam o uso de siglas apenas quando o acrônimo é amplamente conhecido e bem compreendido. DVD ou XML são excelentes exemplos disso, pois enquanto você os reconhecerá imediatamente, levará um pouco mais para reconhecer a versão expandida.
Abreviações
As Diretrizes do .NET Framework recomendam não usar abreviações (em oposição a siglas), exceto que duas abreviações comuns 'ID' e 'OK' podem ser usadas nos identificadores. Ao usar uma abreviação, o caso misto Id
é sempre usado, exceto a primeira palavra de um identificador camelCase (em oposição a um identificador PascalCase).
Em Java, essa convenção é seguida apenas algumas vezes. Veja como as grafias getID
e a mistura getId
estão misturadas na JCL. (Role parcialmente nessa página). Na versão Java 8 , porém, getId
é usado cada vez mais, o que sugere que a convenção PascalCase é preferida atualmente. É melhor evitar as abreviações inteiramente quando possível.
Acrônimos curtos
As Diretrizes do .NET Framework dizem que acrônimos de duas letras como 'IO' devem ter o mesmo caso para ambas as letras. Então, para os identificadores PascalCase (como o nome de uma classe) você obteria DBRate
, enquanto para o identificador camelCase (como uma variável local), você pode ter ioChannel
.
Definitivamente, essa também parece ser a convenção predominante em Java.
Acrônimos longos
As diretrizes do .NET Framework recomendam que acrônimos de três letras ou mais usem maiúsculas e minúsculas para os identificadores PascalCase e camelCase, exceto a primeira palavra de um identificador camelCase. Assim, para um nome de classe que você possa ter XmlDocument
, enquanto uma variável local pode ser nomeada httpRequest
.
Esta convenção nem sempre é seguida em Java. Os acrônimos de quatro caracteres costumam usar letras maiúsculas e minúsculas, mas mesmo o JCL não é consistente com acrônimos de três letras. A maioria deles parece estar em maiúscula, como 'URL', 'XML', 'SQL' e 'DOM', mas existem algumas exceções como 'Jar'.
Conclusão
Para Java:
Para acrônimos com mais de 4 letras, use letras maiúsculas e minúsculas. A biblioteca padrão faz isso, e isso faz muito sentido.
Para acrônimos de três letras, você pode usar todas as letras maiúsculas, como a JCL, ou usar maiúsculas e minúsculas, como o .NET Framework. De qualquer maneira, seja consistente.
Para acrônimos de 2 letras, use todas as maiúsculas.
Para abreviações de duas letras, Java realmente não tem um padrão, mas sugiro o uso de maiúsculas e minúsculas, a menos que a consistência com outros nomes faça com que todas as maiúsculas pareçam melhores.
DigitalVersatileDiscPlayer
é o caminho a seguir.