C#のネステッドクラスはJavaのstaticなメンバクラスと同じようなもので、C#には非staticなメンバクラスは存在しない*1。
また、クラスだけじゃなくてインターフェイスや構造体、列挙体もネストさせることができる。
class Outer { class NestedClass {} interface NestedInterface {} struct NestedStruct {} enum NestedEnum {} // Javaでfinalかつコンストラクタがprivateなstaticなメンバクラス static class StaticNestedClass {} }