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

淺談c# 面向?qū)ο笾惻c對象

 更新時間:2014年12月11日 11:35:30   投稿:hebedich  
這篇文章主要介紹了c# 面向?qū)ο蟮念惻c對象的相關(guān)知識,非常的淺顯易懂,有需要的小伙伴參考下。

類與對象

1、了解類:從這里開始,學(xué)習(xí)C#面向?qū)ο缶幊痰幕緝?nèi)容,使用C#編程,所有的程序代碼都放在類中,結(jié)構(gòu)體是一個用戶自定義的類型,是由其他類型組成的變量組,不存在獨立于類之外的函數(shù);因此,在面向?qū)ο笾?,類是面向?qū)ο缶幊痰幕締卧?。類與類之間交互。

2、類的定義:一個類都可以包含2種成員:字段和方法。

1)類的字段一般代表類中被處理的數(shù)據(jù)(變量);

2)類的方法大多數(shù)代表對這些數(shù)據(jù)的處理過程或用于實現(xiàn)某種特定的功能,方法中的代碼往往需要訪問字段保存的數(shù)據(jù)。

簡單的說,字段即變量,方法即函數(shù)。

例如:

復(fù)制代碼 代碼如下:

[public | private] class 類名  //類名前的修飾符默認(rèn)是public
{
[public | private]  數(shù)據(jù)類型  變量名;//定義變量
[public | private] 數(shù)據(jù)類型 函數(shù)名(參數(shù)列表)//定義函數(shù)
    {
        函數(shù)體;
   }
}

3、類的字段(即變量)

字段代表了類中的數(shù)據(jù),在類的所有方法之外定義一個變量即定義了一個字段。,在變量之前加修飾符public,private,protected表示字段的訪問權(quán)限。

例:

復(fù)制代碼 代碼如下:

class ren
{
public decimal tizhong; //體重decimal類型
private static decimal nianling;//年齡decima類型,靜態(tài)的
public int shengao=175;//身高int類型,身高賦值175cm;
}

4、類的方法(即函數(shù))

1)函數(shù)的概念

 在程序開發(fā)過程中,為了解決代碼重復(fù)的問題,絕大多數(shù)程序設(shè)計設(shè)計語言都將完成某一公用功能的多個語句組合在一起,起一個名字用于代表這些語句的全體,這樣的代碼塊被稱為“函數(shù)”。

簡單的理解就是,在一個program.cs文件中添加一個類,而這個class類就是專門存放程序需要的函數(shù)方法的庫(平時的積累),每一個方法函數(shù)都由多個變量、語句等組成的一個代碼塊,而這個代碼塊有一個方法名,(在方法名前加修飾符public,private,protected等表示這個函數(shù)的訪問權(quán)限)需要時直接在主函數(shù)的文件中調(diào)用這個方法名即可。

例如:

<1>有返回值的情況(多種數(shù)據(jù)類型,如int,string,double等):

復(fù)制代碼 代碼如下:

class  類名{
 public int  函數(shù)名(int x,int y)
{
int z=x+y;
return z;//上面函數(shù)的數(shù)據(jù)類型就是return要返回的數(shù)據(jù)類型,一定要對應(yīng)一致,才能在主函數(shù)中調(diào)用并輸出返回值;
}
}

<2>無返回值的情況(void)

復(fù)制代碼 代碼如下:

class  類名{
 public void  函數(shù)名(int x,int y)//如果沒有返回值,即在定義函數(shù)名前加void;
{
int z=x+y;
Console.Write("z的值為:"+z);直接在函數(shù)中輸出
 return;//或者直接return+分號;即沒有返回值,不用在主函數(shù)中調(diào)用輸出
}
}

2)方法的定義與使用

定義:放在一個類的函數(shù)(通常加一個存取權(quán)限修飾符)稱為“方法”;

調(diào)用一個方法最基本的方式是通過類創(chuàng)建的對象。new初始化對象的過程是創(chuàng)建一個新對象的過程,利用原有的模板創(chuàng)建一個新的對象,開辟一個新的空間。

例如:ren r=new ren();

例如:在ren類中定義一個Add()方法:

復(fù)制代碼 代碼如下:

public class ren()
{
public int Add(int x,int y)
{
return x+y;
}
}

在主函數(shù)調(diào)用ren()這個方法:

復(fù)制代碼 代碼如下:

static void Main(string[] args)
{
ren r=new ren();//創(chuàng)建ren類的對象,命名r
int result=r.Add(100,200);//通過對象調(diào)用類的方法,結(jié)果保存在局部變量中
}

3)【重點】方法重載(在同一命名空間下,同一個類中,同一個方法,參數(shù)不同/參數(shù)的個數(shù)不同/返回值不同)

復(fù)制代碼 代碼如下:

class shu//同一命名空間,同一個類下
{
public int Add(int x,int y)//方法Add整數(shù)型相加
{
return x+y;
}
public double Add(double x,double y)//方法Add浮點數(shù)相加
{
return x+y;
}
}

兩個構(gòu)成重載關(guān)系的函數(shù)必須滿足如下關(guān)系:

1)函數(shù)名相同;

2)參數(shù)類型不同,或者參數(shù)個數(shù)不同

5、【重點】函數(shù)在命名空間(又稱為程序集)內(nèi)的引用時,不同修飾符的區(qū)別:

1)public 公用的,在同一個命名空間內(nèi)可以引用;在不同的命名空間,需要引用當(dāng)前的命名空間,使用[using +命名空間的名稱];

2)private 私有的,只對private位于的當(dāng)前這個類起作用;

3)protected 受保護的,只作用于當(dāng)前這個類,但(集成)也可以作用于當(dāng)前這個類的子類。

4)static 靜態(tài)的,靜態(tài)變量只能在靜態(tài)方法中使用,靜態(tài)變量不能跨類使用(只能在累加求和時使用)

6、類的靜態(tài)成員(字段和方法)

1)靜態(tài)字段(即靜態(tài)變量)

public static int nianling;

2)靜態(tài)方法(即靜態(tài)函數(shù))

定義

復(fù)制代碼 代碼如下:

class 類名
{
public static void jingtai()
{
nianling=18;
}
}

【注意事項】

1、普通方法(不是靜態(tài)方法的):在當(dāng)前類中,不需要初始化,可直接使用;

在當(dāng)前類中,定義的變量可直接當(dāng)做一個普通變量使用。

2、在靜態(tài)方法中,不允許使用除了靜態(tài)變量之外的其他外部成員變量,除非對象初始化(new)就可以引用。

3.主函數(shù)(也屬于static)中,調(diào)用函數(shù)方法也必須初始化;只要是帶static的方法,都不能直接外部成員變量。

相關(guān)文章

  • c# HttpClient設(shè)置超時的步驟

    c# HttpClient設(shè)置超時的步驟

    這篇文章主要介紹了c# HttpClient設(shè)置超時的步驟,幫助大家更好的理解和學(xué)習(xí)使用c#,感興趣的朋友可以了解下
    2021-03-03
  • Winform中進行MD5加密的實例

    Winform中進行MD5加密的實例

    下面小編就為大家?guī)硪黄猈inform中進行MD5加密的實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-01-01
  • C#中類與結(jié)構(gòu)的區(qū)別實例分析

    C#中類與結(jié)構(gòu)的區(qū)別實例分析

    這篇文章主要介紹了C#中類與結(jié)構(gòu)的區(qū)別,類與結(jié)構(gòu)是C#初學(xué)者比較輕易混淆的概念,本文加以實例說明,需要的朋友可以參考下
    2014-08-08
  • c# 反射+自定義特性保存數(shù)據(jù)至本地

    c# 反射+自定義特性保存數(shù)據(jù)至本地

    這篇文章主要介紹了c# 反射+自定義特性保存數(shù)據(jù)至本地的方法,幫助大家更好的理解和使用c#,感興趣的朋友可以了解下
    2020-12-12
  • unity shader實現(xiàn)較完整光照效果

    unity shader實現(xiàn)較完整光照效果

    這篇文章主要為大家詳細(xì)介紹了unity shader實現(xiàn)較完整光照效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-11-11
  • 深入淺析C#?11?對?ref?和?struct?的改進

    深入淺析C#?11?對?ref?和?struct?的改進

    這篇文章主要介紹了C#?11?對?ref?和?struct?的改進,有了這些基礎(chǔ)設(shè)施,開發(fā)者們將能輕松使用安全的方式來編寫沒有任何堆內(nèi)存開銷的高性能代碼,需要的朋友可以參考下
    2022-04-04
  • 在WPF中實現(xiàn)全局快捷鍵功能

    在WPF中實現(xiàn)全局快捷鍵功能

    這篇文章介紹了在WPF中實現(xiàn)全局快捷鍵功能的方法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-06-06
  • Unity?UGUI的GraphicRaycaster射線投射組件介紹使用

    Unity?UGUI的GraphicRaycaster射線投射組件介紹使用

    這篇文章主要為大家介紹了Unity?UGUI的GraphicRaycaster射線投射組件介紹使用,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-07-07
  • XAML如何獲取元素的位置

    XAML如何獲取元素的位置

    這篇文章主要為大家詳細(xì)介紹了XAML如何獲取元素的位置,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • CDMA 貓用AT命令發(fā)中文短信(C#)

    CDMA 貓用AT命令發(fā)中文短信(C#)

    CDMA貓連PDU都不支持,只能發(fā)文本短信。而且發(fā)中文短信居然是UNICODE,無法在超級終端里輸入。只能寫程序。網(wǎng)上這個問題談?wù)摰乇容^多,做起來比較累,還偶爾會出亂碼。還是將C#的成功代碼帖一下吧。
    2009-08-08

最新評論