日期:2014-05-17  浏览次数:20951 次

c#类里面,再定义类是什么意思,有什么好处吗?
using System;
using System.Collections.Generic;
using System.Text;

namespace ConsoleApplication2
{
  public class Center
  {
  private string message;
  public string address = "Beijing";
  public delegate void SendMessageEventHandler(object sender, SendMessageEventArgs e);
  public event SendMessageEventHandler SendMessage;

  public class SendMessageEventArgs : EventArgs
  {
  public readonly string message;
  public SendMessageEventArgs(string message)
  {
  this.message = message;
  }
  }

  protected virtual void OnSendMessage(SendMessageEventArgs e)
  {
  if (SendMessage != null)
  {
  SendMessage(this, e);
  }
  }
  }
}
我可以把SendMessageEventArgs 类放到外面来定义吗

------解决方案--------------------
不可以吧。
------解决方案--------------------
嵌套类仅仅是语法上的嵌入,目的在于隐藏类名,减少全局的标志符,从而限制用户能否使用该类建立对象。 
我觉得嵌套类就是多一种选择而已,嵌套类能实现的非嵌套类也能实现.

楼主,你可以随便写个独立类和嵌套类试试.就能体现出来.
------解决方案--------------------
嵌套类仅仅是语法上的嵌入,目的在于隐藏类名,减少全局的标志符,从而限制用户能否使用该类建立对象。 
我觉得嵌套类就是多一种选择而已,嵌套类能实现的非嵌套类也能实现.

楼主,你可以随便写个独立类和嵌套类试试.就能体现出来.
------解决方案--------------------
嵌套类隐藏得比较深,且有权限访问所在类的一切成员,无论是私有的还是公有的。嵌套类主要用于当该类仅仅被所在类使用,不需要外部进行显式地构造,且需要对所在类的成员进行大量访问操作的情况。通常来说,不需要使用嵌套类。
------解决方案--------------------
都说了
------解决方案--------------------
4楼正解
------解决方案--------------------
嵌套类主要是继承外部可见性,如外面的类是private的,则嵌套类在外部类外不可见
------解决方案--------------------
4楼正解!~~~~~
------解决方案--------------------
学习了
------解决方案--------------------
套类隐藏得比较深,且有权限访问所在类的一切成员,无论是私有的还是公有的。嵌套类主要用于当该类仅仅被所在类使用,不需要外部进行显式地构造,且需要对所在类的成员进行大量访问操作的情况。通常来说,不需要使用嵌套类。恩 正确
------解决方案--------------------
学习了一下OOP