Csharp/C#教程:C#中静态方法和实例化方法的区别、使用分享

1、定义方法的格式

访问修饰符返回类型方法名(参数列表) { //方法的主体… }

2、静态方法

在大多数时候,我们定义写一个方法,会把方法区分为实例化方法(普通方法)和静态方法。

用static修饰一个方法,就是静态方法。

publicstringInstanceMethod()//定义一个实例化方法(普通方法) { return"实例化方法(普通方法)"; } publicstaticstringStacticMethod()//定义一个静态方法 { return"静态方法"; }

3、静态方法和实例化方法的区别

(1)静态方法和实例方法,在加载时机上是一样的,在类型第一次被使用的时候加载,调用的速度基本上没有差别

(2)静态方法和实例化方法在本质上都是方法,所以在内存中,无论是静态方法还是实例化方法,在内存中都只保存一份

(3)如果一个方法,与他所在的类的事例对象无关,那么它就应该是静态的,而不应该把它写成实例方法。

   从面向对象的角度来说,在抉择使用静态方法还是实例化方法,应该依据这个方法和实例化对象是否有逻辑关系

(4)静态方法只与类有关,它不依赖于对象的存在而存在;实例方法则在对象存在后才能使用。

普通方法、静态方法的使用

实例化方法:需要实例化对象,用对象点出来。

静态方法:直接用类名点出来,不需要实例化对象。

(1)如果两个方法都是实例化方法(普通方法),那么可以直接用方法名调用

publicvoidEat() { Console.WriteLine("吃饭!"); Sleep();//直接调用Sleep方法 } publicvoidSleep() { Console.WriteLine("睡觉!"); }

(2)如果两个方法都是静态方法,那么可以直接用方法名调用

publicstaticvoidHello() { Console.WriteLine("Hello!"); } publicstaticvoidMusic() { Hello();//直接调用Hello方法 }

(3)在静态方法中调用非静态方法,那么要先创建对象,再通过对象名.方法名()

usingSystem; usingSystem.Collections.Generic; usingSystem.Linq; usingSystem.Text; usingSystem.Threading.Tasks; namespaceConsoleApp4 { classProgram { staticvoidMain(string[]args) { Programa=newProgram();//先创建一个对象 a.Hello();//通过对象名.方法名(),来调用方法 Console.ReadLine(); } publicvoidHello() { Console.WriteLine("SayHello!"); } } }

(4)在非静态方法中,可以使用静态方法

publicvoidName() { Hello();//在非静态方法中,直接调用静态方法 } publicstaticvoidHello() { Console.WriteLine("SayHello!"); }

上述就是C#学习教程:C#中静态方法和实例化方法的区别、使用分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/903880.html

(0)
上一篇 2021年10月21日
下一篇 2021年10月21日

精彩推荐