欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C#中靜態(tài)方法和實(shí)例化方法的區(qū)別、使用

 更新時(shí)間:2020年06月10日 11:29:45   作者:一杯清酒邀明月  
這篇文章主要介紹了C#中靜態(tài)方法和實(shí)例化方法的區(qū)別、使用,文中講解的非常細(xì)致,對(duì)大家的學(xué)習(xí)有所幫助,感興趣的朋友可以了解下

1、定義方法的格式

 訪問(wèn)修飾符 返回類型 方法名 (參數(shù)列表)
 {
 // 方法的主體…
 }

2、靜態(tài)方法

在大多數(shù)時(shí)候,我們定義寫一個(gè)方法,會(huì)把方法區(qū)分為實(shí)例化方法(普通方法)和靜態(tài)方法。

用static修飾一個(gè)方法,就是靜態(tài)方法。

public string InstanceMethod()//定義一個(gè)實(shí)例化方法(普通方法)
{
  return "實(shí)例化方法(普通方法)";
}
public static string StacticMethod()//定義一個(gè)靜態(tài)方法
{
  return "靜態(tài)方法";
}

3、靜態(tài)方法和實(shí)例化方法的區(qū)別

(1)靜態(tài)方法和實(shí)例方法,在加載時(shí)機(jī)上是一樣的,在類型第一次被使用的時(shí)候加載,調(diào)用的速度基本上沒(méi)有差別

(2)靜態(tài)方法和實(shí)例化方法在本質(zhì)上都是方法,所以在內(nèi)存中,無(wú)論是靜態(tài)方法還是實(shí)例化方法,在內(nèi)存中都只保存一份

(3)如果一個(gè)方法,與他所在的類的事例對(duì)象無(wú)關(guān),那么它就應(yīng)該是靜態(tài)的,而不應(yīng)該把它寫成實(shí)例方法。

    從面向?qū)ο蟮慕嵌葋?lái)說(shuō),在抉擇使用靜態(tài)方法還是實(shí)例化方法,應(yīng)該依據(jù)這個(gè)方法和實(shí)例化對(duì)象是否有邏輯關(guān)系

(4)靜態(tài)方法只與類有關(guān),它不依賴于對(duì)象的存在而存在;實(shí)例方法則在對(duì)象存在后才能使用。

普通方法、靜態(tài)方法的使用

實(shí)例化方法:需要實(shí)例化對(duì)象,用對(duì)象點(diǎn)出來(lái)。

靜態(tài)方法:直接用類名點(diǎn)出來(lái),不需要實(shí)例化對(duì)象。

(1)如果兩個(gè)方法都是實(shí)例化方法(普通方法),那么可以直接用方法名調(diào)用

public void Eat()
{
 Console.WriteLine("吃飯!");
 Sleep();//直接調(diào)用Sleep方法
}
public void Sleep()
{
 Console.WriteLine("睡覺(jué)!");
}

(2)如果兩個(gè)方法都是靜態(tài)方法, 那么可以直接用方法名調(diào)用

public static void Hello()
{
 Console.WriteLine("Hello!");
}
public static void Music()
{
 Hello();//直接調(diào)用Hello方法
}

(3)在靜態(tài)方法中調(diào)用非靜態(tài)方法,那么要先創(chuàng)建對(duì)象,再通過(guò)對(duì)象名.方法名()

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp4
{
 class Program
 {
 static void Main(string[] args)
 {
  Program a = new Program();//先創(chuàng)建一個(gè)對(duì)象
  a.Hello();//通過(guò) 對(duì)象名.方法名(),來(lái)調(diào)用方法
  Console.ReadLine();
 }
 public void Hello()
 {
  Console.WriteLine("Say Hello!");
 }
 }
}

(4)在非靜態(tài)方法中,可以使用靜態(tài)方法

public void Name()
{
 Hello();//在非靜態(tài)方法中,直接調(diào)用靜態(tài)方法
}
public static void Hello()
{
 Console.WriteLine("Say Hello!");
}

以上就是C#中靜態(tài)方法和實(shí)例化方法的區(qū)別、使用的詳細(xì)內(nèi)容,更多關(guān)于C# 靜態(tài)方法和實(shí)例化方法的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評(píng)論