static,可以不用申明对象把,直接使用
解决方案 »
- 请教C#下WINFORM里,调用第三方DLL时Handle指针的问题
- 我想知道c# 有什么word 的api?
- 如何判断textbox里是否已经全选
- 急问个问题:关于Gridview的!!
- 路过请留步:含有app.config文件就会生成一个项目.exe.config文件?.net编译的动作?
- Socket获取IP的问题
- 除了Duwamish,还有什么经典的微软样例代码值得好好研究的啊?
- 怎么让winform里面的控件随winform的最大化而变大?
- 怎么用用定时器 没隔1秒 来改变一个控件的高度 SIZE高度 高手来帮帮忙哦
- 我是新手。在新建一个项目时,提示“VC软件包不可用或未注册",怎么解决?
- 在c#中怎样将从数据库中取得的日期型值转化成datetime类型
- 高分求Document! X 3.0.3(Professional Edition)下载
这种函数只执行一次,在第一次创建类的对象的时候,就会自动调用它.
可以参考一下下面的代码.using System;class Welcome
{
public Welcome()
{
Console.WriteLine("构造函数 Welcome()");
}static Welcome()
{
Console.WriteLine("构造函数 static Welcome()");
}static void Main()
{
new Welcome();
new Welcome();
Console.ReadLine();
}
}执行结果:
构造函数 static Welcome()
构造函数 Welcome()
构造函数 Welcome()
ConfigurationSettings.AppSettings.Get("connstring");
直接使用该类的方法就行了,而不需要构造任何对象出来。
由于C#是全面向对象的语言,而有些事情又不必要要new出对象来,所有有了这样的静态构造函数
using System;
class MyClass
{
// Static constructor:
static MyClass()
{
Console.WriteLine("The static constructor invoked.");
} public static void MyMethod()
{
Console.WriteLine("MyMethod invoked.");
}
}class MainClass
{
static void Main()
{
MyClass.MyMethod();
// MyClass mc = new MyClass();
}
}
输出
The static constructor invoked.
MyMethod invoked.
我们可以通过class来调用。如果所有的实体都有这种方法的话,我们就可以选择static了。
只要还是这种方法与实体无关
一、非静态
public void ShowPictrue()
{
}
二、静态
static public void ShowPictrue()
{
}
在一个具体的引用中,对于第一种情况我们用
MyTools mytool=new MyTools();
mytool.ShowPictrue();
第二种情况:
MyTools.ShowPictrue();
看清楚了吗?第一种要首先声明一个变量再调用,第二种直调用,理论我就不讲了,掌握这一点就差不多了,注意的是,静态函数中不能使用非静态的变量。