この質問にはすでに答えがあります。
静的クラスのインスタンスを複数作成できるのはなぜですか?静的クラスと静的メソッドの間に類似点を見つけようとしますが、この事実が私を混乱させます。
静的クラスはネストしたクラスです(つまり、別のクラス内で宣言されます)。これは最上位クラスのように動作します。つまり、複数のインスタンスを作成できます。
静的メソッドや静的変数との共通点はあまりありません。
まず第一に - あなたはトップレベルの静的クラスを作成することはできません。静的クラスはネストしたクラスを指します。
静的ネストクラスは、それが含まれるクラスと何らかの形で関連している場合に作成します。親なしでネストクラスを初期化しても意味がありません。
内部クラスがなぜ静的であると定義されているのかを理解するために、それらがあるとしたらどうなるか想像してくださいではないstatic:一般に利用可能ではなく、内部クラス定義外部クラスのインスタンスに属します。これらのようなクラス定義はコンパイル時に既に存在するので、それは本当の意味をなしません。結果として、それらが静的ではないためになされるべきケースはありません。