Konwertuję Javę na język C# i otrzymuję następujący kod (patrz: discussion in Java Context). Jednym ze sposobów może być stworzenie osobnego pliku/klasy, ale czy istnieje C# idom, który zachowuje intencję w kodzie Java?Czy w języku C# występuje odpowiednik zagnieżdżonej klasy statycznej Java?
public class Foo {
// Foo fields and functions
// ...
private static class SGroup {
private static Map<Integer, SGroup> idMap = new HashMap<Integer, SGroup>();
public SGroup(int id, String type) {
// ...
}
}
}
Blog jest przydatny i pokazuje, że konstrukcja może prowadzić do brzydkiej składni. –
Zagnieżdżona klasa statyczna Java służy tylko do mechanizmu określania zakresu. Jawna klasa zagnieżdżona Java tłumaczy bezpośrednio do C#: 'class Foo {class Group {}}'. To nie jest poprawna odpowiedź, wybierz @JonSkeet odpowiedź –