关于C#WinForm中类的问题

来源:百度知道 编辑:UC知道 时间:2024/05/05 21:52:52
这是一个类

using System;

namespace ns_common
{
public sealed class CMsgManager
{
public CMsgManager();

public static void Destory();
public int ExchangeWindowData(IntPtr handle, NMMsgDef nMsgType, ref TWinExchangeData data);
public static CMsgManager Instance();
}
}

这是调用方法

CMsgManager.Instance().ExchangeWindowData(this.ActiveMdiChild.Handle, NMMsgDef.MD_BOLD,ref WinExchangeData);

这种调用方法我看不懂,请高手解释下类的意思,还有为什么要这样调用~ 谢谢了!

CMsgManager是一个密封的类,不能被继承,它里面有两个静态的方法Destory和CMsgManager(本身)类型 Instance();

如果直接打CMsgManager.来调用ExchangeWindowData方法的话,是调用不到的,需要实例化才行,因为这个方法不是静态的。

而通过CMsgManager.Instance().ExchangeWindowData则能调用,因为Instance方法是静态的可以通过类名来访问,而这个方法返回的是一个CMsgManager类型的实例,所以等于实例化了一次,就可以访问到了。。嘿嘿

只是单纯的调用了这个类里的ExchangeWindowData 这个方法而已

呵呵 你没有接触到 委托和事件吧,去了解下那个知识点,看它这个就简单了,别人怎么说你都听不懂的。