c# 筆記

c#程序剛開始啟動的時候都會有唯一一個入口函數(shù)main()函數(shù),而非靜態(tài)成員又稱實例成員,必須作用于實例。在程序剛開始運行的時候,未建立任何實例,因此無法調(diào)用實例成員,包括非靜態(tài)的Main方法。為了能夠在程序的開始執(zhí)行Main方法,必須將其聲明為靜態(tài)。?

順便說明,在Main方法中調(diào)用的成員也必須是靜態(tài)的,除非建立過相應(yīng)的實例。?


namespace lover_P.Test {?

public class Test {

public void InstanceMethod() {} // 實例成員(非靜態(tài))

public static void StaticMethod {} // 類型成員(靜態(tài))

public static void Main() {

InstanceMethod(); // 錯誤!調(diào)用了實例成員,而此時并沒有建立實例

StaticMethod(); // 正確!可以調(diào)用靜態(tài)成員

Test SomeTest = new Test(); // 建立本類型的一個實例

SomeTest.InstanceMethod(); // 再在這個實例上調(diào)用實例成員就對了

SomeTest.StaticMethod(); // 附加一句,在實例上調(diào)用靜態(tài)成員也是錯誤的!

}

}

}




static 表示方法是靜態(tài)的就是說方法在程序被編譯的時候就被分配了內(nèi)存,使用的時候不用生成某個類型的對象,直到程序退出才釋放。

void 表示方法沒有返回值,就是方法沒有renturn 關(guān)鍵字。

main 是方法名,當(dāng)然這個方法是特殊的方法,是Main()就是說是主函數(shù),就是整個程序的入口,程序被編譯后從這里開始執(zhí)行,這也是main方法要是static的原因,因為在啥都沒做的時候這個函數(shù)就得存在。

string[] args 表示命令行參數(shù)是字符串?dāng)?shù)組,就是說,你在命令行(黑框框)里輸入的參數(shù)可以使多個字符串(在某種意義上意味著什么都可以是命令行參數(shù))。

運行時會彈出命令窗口,你可以在那里輸入一些參數(shù),string[] args 指的就是你在命令窗口輸入的參數(shù)。args是用來處理命令行參數(shù)的。命令行參數(shù),就是你運行這個程序的時候給它傳的參數(shù)。它是可選項,不是必須的。

如何向C# Main函數(shù)傳遞參數(shù)呢?我們看到C# Main函數(shù)帶有一個string[] args參數(shù),那么你知道它有什么實際的功能呢?下面我們來具體談?wù)劊?/b>

C#控制臺應(yīng)用程序下,我們常常看到Main函數(shù)帶有一個string[] args參數(shù),那么你知道它有什么用處?

步驟1:建立一個控制臺應(yīng)用程序,暫且命名為Main.cs

步驟2:貼上下面這段代碼。

using System;

class Program{

????? static void Main(string[] args){

????? int argsLength = args.Length;

????? Console.WriteLine("Main函數(shù)參數(shù)args的長度:" + argsLength.ToString());

for (int i = 0; i < argsLength; i++)

{

Console.Write("第" + i.ToString() + "位是:");

Console.WriteLine(args[i].ToString());

}

}

}

步驟3:編譯并運行Main.cs,生成Main.exe文件

步驟4:在命令行模式下輸入c:\>Main a b c ,敲回車看結(jié)果

輸出結(jié)果為:

Main函數(shù)參數(shù)args的長度:3

第0位是:a

第1位是:b

第2位是:c

由于參數(shù)個數(shù)是未知的,所以允許輸入任意多個,也可以不輸入。



C#四種訪問修飾符是什么

Public:公有的,是類型和類型成員的訪問修飾符。對其訪問沒有限制。

Internal:內(nèi)部的,是類型和類型成員的訪問修飾符。同一個程序集中的所有類都可以訪問

Private:私有的,是一個成員訪問修飾符。只有在聲明它們的類和結(jié)構(gòu)中才可以訪問。

Protected::受保護的,是一個成員訪問修飾符。只能在它的類和它的派生類中訪問。



一、??main方法分析

1、???????publicstatic void main(String [] args)

{

?? //代碼塊

}

2、???????public:共有的

static:靜態(tài)的

void:沒有返回值

mian:主方法名稱

String[] args:表示參數(shù)為字符串

二、??作業(yè):

創(chuàng)建一個羊類,使用static實現(xiàn)羊類,記錄一共創(chuàng)建了幾只羊,

?class HomeWork1

{

?public static void main(String[] args)

?{

??Sheep s1 = new Sheep("喜洋洋");

??Sheep s2 = new Sheep("美羊羊");

??Sheep s3 = new Sheep("懶洋洋");

??System.out.println(Sheep.getCount());

?}

}

class Sheep

{

?private String name;

?private static int count = 0;

?public Sheep(String name)

?{

?? this.name = name;

?? count++;

?}

?public static int getCount()

?{

??? return count;

?}

}

---------------------

作者:Lqc_javaEngineer

來源:CSDN

原文:https://blog.csdn.net/u014756517/article/details/51067377

版權(quán)聲明:本文為博主原創(chuàng)文章,轉(zhuǎn)載請附上博文鏈接!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容