静态方法
* 静态方法:
* 特点: 1、生命周期一旦创建 --应用程序结束才会结束 2、全局 3、效率高
* 用处:如用户登入信息、系统配置信息、系统设置、SQLHelper
* 注意:静态的东西创建多了,占用内存会很大,不是必要的情况不要创建静态对象
* *调用:静态方法调用非静态方法,把所在类初始化后再调用*
*
转载请标明出处:Python Excellent的博客
class Test
{
//控制台测试输出
static void Main(string[] args)
{
//1--静态方法
TestStaticMethod testStaticMethod = new TestStaticMethod();
Console.WriteLine(testStaticMethod.Test1()); //在静态方法中不能直接调用非静态方法
Console.WriteLine(Test2()); //静态方法可直接调用
}
#region 静态方法测试
/// <summary>
/// 静态方法测试
/// </summary>
class TestStaticMethod //新建一个测试静态方法的类,在类里面声明一个非静态方法
{
public string Test1()
{
return "非静态方法\n";
}
}
public static string Test2()
{
return "我是静态方法\n";
}
#endregion
}
构造方法
* 构造方法:
* 用处:1、初始化对象,2、或者初始化一些数据
* 特点:默认是有一个无参构造方法 ,也可以多个重载
*
class Test
{
//控制台测试输出
static void Main(string[] args)
{
//2--构造方法
CtorMethod ctorMethod = new CtorMethod(); //实例化这个类时,会默认输出测试构造方法文本
}
/// <summary>
/// 构造方法测试
/// </summary>
class CtorMethod
{
/// <summary>
/// 实例化这个类时,会默认进入该CtorMethod()方法
/// </summary>
public CtorMethod()
{
TestCtorMethod();
}
public void TestCtorMethod()
{
Console.WriteLine("我在测试构造方法\n");
}
}
#endregion
}
虚方法
* 虚方法:
* 作用:允许子类和派生类,进行重写 同样代码实现不同功能
* 特点:原生方法数量少,好维护
class Test
{
//控制台测试输出
static void Main(string[] args)
{
VirtualMethod virtualMethod = new VirtualMethod();
Console.WriteLine($"虚方法输出:2 * 9 = {virtualMethod.Calculate(2, 9)}"+"\n");
}
#region 虚方法测试
public class VirtualMethod
{
//不加virtual 则这个计算方法只能计算两个数相乘
public virtual int Calculate(int a,int b)
{
//乘法
return a*b;
}
}
class virtualMethodChild : VirtualMethod
{
//重写一个子类,继承父类VirtualMethod
public override int Calculate(int a, int b)
{
//调用基类的方法
//return base.Calculate(a, b);
//加法
return a + b;
}
}
#endregion
}