在過去,我避免了定義嵌套類。但是,如果一個班級只會在小學階段內使用,那麼是否將班級嵌入班級是理想的地方?在這個問題上是否有公認的公約?C# - 定義公共嵌套類:我們應該這樣做嗎?
public class PrimaryClass
{
public class SubClass
{
// ...
}
public SubClass MySubClass { get; set; }
// ...
}
或者它應該永遠是
public class SubClass
{
// ...
}
public class PrimaryClass
{
public SubClass MySubClass { get; set; }
// ...
}
如果它們在本例中被命名,則它們不是匿名的,而只是「內部」類。匿名類是不包含「類名」聲明的類。此外,如果標記爲公開,則該課程也可以從周圍的課程外部訪問。 –
@ filip-fku正確。正如我所提到的,在Java中,匿名內部類是*類似結構。有幾個重要的細微差別,特別是在訪問靜態變量方面。 –
但是在Java中,與「匿名內部」類相比,它更接近於匹配的內容 - 僅僅是一個命名的內部/嵌套類。如果在與Java概念比較中引用「內部類」而不是「匿名內部類」,我認爲它會更有幫助。 Java中的匿名類既可以作爲類聲明,也可以作爲實例化,但在此情況並非如此。 –