A classe aninhada estática é como qualquer outra classe externa, pois não tem acesso aos membros da classe externa.
Apenas por conveniência de empacotamento, podemos agrupar classes aninhadas estáticas em uma classe externa para fins de legibilidade. Fora isso, não há outro caso de uso da classe aninhada estática.
Exemplo para esse tipo de uso, você pode encontrar no arquivo Android R.java (recursos). A pasta Res do android contém layouts (contendo designs de tela), pasta drawable (contendo imagens usadas para o projeto), pasta values (que contém constantes de string), etc.
Como todas as pastas fazem parte da pasta Res, a ferramenta Android gera um arquivo R.java (recursos) que contém internamente muitas classes aninhadas estáticas para cada uma de suas pastas internas.
Aqui está a aparência do arquivo R.java gerado no Android:
Aqui eles estão usando apenas para conveniência de empacotamento.
/* AUTO-GENERATED FILE. DO NOT MODIFY.
*
* This class was automatically generated by the
* aapt tool from the resource data it found. It
* should not be modified by hand.
*/
package com.techpalle.b17_testthird;
public final class R {
public static final class drawable {
public static final int ic_launcher=0x7f020000;
}
public static final class layout {
public static final int activity_main=0x7f030000;
}
public static final class menu {
public static final int main=0x7f070000;
}
public static final class string {
public static final int action_settings=0x7f050001;
public static final int app_name=0x7f050000;
public static final int hello_world=0x7f050002;
}
}