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

C#中類的使用教程詳解

 更新時(shí)間:2022年07月06日 10:16:47   作者:yue008  
在對類訪問使用時(shí),常用到的有訪問類的成員、方法。本文就將通過示例為大家詳細(xì)講講C#中類的使用教程,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)學(xué)習(xí)

在對類訪問使用時(shí),常用到的有訪問類的成員、方法。

實(shí)例化

在對類進(jìn)行訪問時(shí),需要將類進(jìn)行實(shí)例化。并產(chǎn)生一個(gè)對象。可以使用關(guān)鍵字new來實(shí)現(xiàn)。

由于類是引用類型,創(chuàng)建類的實(shí)例后,在棧分配對象的引用地址,指向堆內(nèi)存,存儲(chǔ)對象的值。

雖然對象的實(shí)例字段是值類型,也是在堆上創(chuàng)建存儲(chǔ)空間存儲(chǔ)的,棧上對象指向堆存儲(chǔ)的變量。

類名 對象名  = new 類名();

類名。指類的名字,比如書本、汽車等

對象名。指實(shí)例化類后的對象名字,比如實(shí)例化汽車類后,創(chuàng)建一個(gè)具體的對象。可以是奔馳汽車,寶馬汽車等。

類成員

訪問

在對類進(jìn)行實(shí)例化后,調(diào)用對象的名

對象名.類的成員

//創(chuàng)建Book類
class Book
{
	public int Id{get;set;}
	public string Name{get;set;}
	public double Price{get;set;}
	public static string Author{get;set;}//創(chuàng)建類的靜態(tài)成員
	
	public void PrintMsg()//不返回?cái)?shù)值,使用void
	{
		Console.WriteLine("圖書編號(hào):"+Id);
		Console.WriteLine("圖書名稱:"+Name);
		Console.WriteLine("圖書價(jià)格:"+Price);
	}
}

//在項(xiàng)目主程序調(diào)用Book類。
class Program
{
	static void Main(string[] args)
	{
		Book.Author = "SomeBody"  //訪問類靜態(tài)成員時(shí),不需要實(shí)例化對象,可直接訪問
		Book bk = new Book();//Book屬于類,bk屬于對象名
		//為bk對象的屬性賦值
		bk.Id = 1;
		bk.Name = "論演員的自我修養(yǎng)";
		bk.Price = 6.66;
		bk.PrinfMsg();
	}
}

賦值

為對象屬性賦值時(shí),可通過類內(nèi)部的構(gòu)造方法,如果類內(nèi)部沒有構(gòu)造方法,可通過直接賦值。

直接賦值型

根據(jù)上面的例子,當(dāng)類中沒有構(gòu)造方法,并且字段修飾符為public,可通過實(shí)例化對象訪問類的成員,并對其賦值。

代碼案例參考類成員訪問。

構(gòu)造方法型

在使用構(gòu)造方法前,先簡單介紹下構(gòu)造方法。

語法規(guī)則

訪問修飾符  類名 (參數(shù)列表)
{
    語句塊;
}

沒有返回值,可以帶參數(shù),也可不帶參數(shù)

聲明類對象時(shí),系統(tǒng)自動(dòng)調(diào)用構(gòu)造函數(shù),在構(gòu)造函數(shù)中不要對類的實(shí)例進(jìn)行初始化以外的事情,也不能被顯式地調(diào)用。

構(gòu)造函數(shù)可以重載, 從而提供初始化類對象的不同方法

靜態(tài)構(gòu)造函數(shù),用static修飾,用于初始化靜態(tài)變量,一個(gè)類只允有一個(gè)構(gòu)造函數(shù)

構(gòu)造函數(shù)可以使用public、protected、private修飾符,一般常用public,方便對類成員賦值或重載等

如果將訪問修飾符設(shè)置成private類型的,則無法創(chuàng)建該類的對象。

構(gòu)造方法的名稱必須是類名

class User
{
    //創(chuàng)建構(gòu)造函數(shù),作為類的輸入項(xiàng),用于內(nèi)部方法的調(diào)用。
	public User(string name,string password,string tel)
	{
		this.Name = name;
		this.Password = password;
		this.Tel = tel;
	}
	public string Name {get;set;}
	public string Password{get;set;}
	public string Tel{get;set;}
	
	public void PrintMsg()
	{
        //this 
		Console.WriteLine("用戶名:"+this.Name);
		Console.WriteLine("用戶名:"+this.Password);
		Console.WriteLine("用戶名:"+this.Tel);
	}
}

//在Main方法中實(shí)例化user類對象,并調(diào)用其方法
class Program
{
    static void Main(string[] args)
    {
        //實(shí)例化user類,創(chuàng)建對象,根據(jù)類的構(gòu)造函數(shù),傳入三個(gè)參數(shù)。
        User user = new User("小明",123,17726531990);
        user.PrintMsg();
    }
}

方法

指類中創(chuàng)建的方法,其實(shí)上面說的構(gòu)造函數(shù)也是方法。

方法調(diào)用

實(shí)例化對象,然后直接調(diào)用方法,調(diào)用時(shí)需要注意方法是否有傳入?yún)?shù)和返回值。

//創(chuàng)建類
Class SumUtils
{
	public int Sum(int a,int b)
	{
		return a + b;
	}
	public Sayhi()
    {
        Console.WriteLine("Hello World");
    }
}

//實(shí)例化類,并調(diào)用相關(guān)方法。
class Program
{
	static void Main(string[] args)
	{
		//實(shí)例化對象
		SumUtils s = new SumUtils();
		//調(diào)用求兩個(gè)整數(shù)和的方法
		Console.WriteLine("兩個(gè)整數(shù)和為{0}",s.Sum(3,6));
		//打招呼
		s.Sayhi();
	};
}

方法重載

在對方法調(diào)用時(shí),需要注意方法重載。在C#中,可以在同一類定義多個(gè)方法名相同,參數(shù)列表(參數(shù)類型、參數(shù)個(gè)數(shù))不同的方法,這種形式就是方法重載,調(diào)用此類方法時(shí),系統(tǒng)會(huì)根據(jù)實(shí)際傳入?yún)?shù),選擇與其匹配的方法執(zhí)行。

//創(chuàng)建計(jì)算器類,完成求和
class Counter
{
	//求兩個(gè)整數(shù)和
	public int Sum(int a,int b)
	{
		return a+b;
	}
	
	//求階乘
	pubic int Sum(int a)
	{
		int sum = 0;
		for(int i=1;i<a;i++)
		{
			sum *= i;
		}
	}
}

//在Main方法中調(diào)用
class Program
{
	static void Main(string[] args)
	{
		Counter c = new Counter();
		Console.WriteLine("整數(shù)和為:"+c.Sum(3,5));
		Console.WriteLine("階乘為:"+c.Sum(5));
	}
}

到此這篇關(guān)于C#中類的使用教程詳解的文章就介紹到這了,更多相關(guān)C# 類內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論