Назначение внутреннего класса?

Я читал несколько сообщений и заметил образцы с внутренним классом. Я часто видел это в последнее время, особенно в нескольких примерах на MSDN, которые я просматривал. Я' Мне никогда раньше не приходилось использовать внутренний класс (но, может быть, мне действительно стоит это сделать), поэтому мне интересно, в чем именно смысл? Я предполагаю, что внутренний класс (по крайней мере, частный в любом случае) доступен только для самого основного класса, поэтому разве не было бы то же самое, просто включить любую функциональность, имеющуюся во внутреннем классе, в некоторые методы внешнего класса? Есть ли за внутренним классом объектно-ориентированная причина?

Я думаю в основном в рамках C #, но полагаю, что это может относиться к любому объектно-ориентированному языку, поддерживающему внутренний класс.

Возьмите этот пример на msdn , например: CharacterCollection и WordCollection являются общедоступными классы внутри класса Document. Какая разница была бы, если бы они находились вне класса Document?

10
задан pinkfloydx33 3 November 2010 в 11:09
поделиться