国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

淺談c# 面向對象之類與對象

2019-10-29 21:47:05
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了c# 面向對象的類與對象的相關知識,非常的淺顯易懂,有需要的小伙伴參考下。
 

類與對象

1、了解類:從這里開始,學習C#面向對象編程的基本內容,使用C#編程,所有的程序代碼都放在類中,結構體是一個用戶自定義的類型,是由其他類型組成的變量組,不存在獨立于類之外的函數;因此,在面向對象中,類是面向對象編程的基本單元。類與類之間交互。

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

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

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

簡單的說,字段即變量,方法即函數。

例如:

 

復制代碼代碼如下:

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

 

3、類的字段(即變量)

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

例:

 

復制代碼代碼如下:

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

 

4、類的方法(即函數)

1)函數的概念

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

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

例如:

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

 

復制代碼代碼如下:

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

 

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

 

復制代碼代碼如下:

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

 

2)方法的定義與使用

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

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

例如:ren r=new ren();

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

 

復制代碼代碼如下:

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

 

在主函數調用ren()這個方法:

 

復制代碼代碼如下:

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

 

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

 

復制代碼代碼如下:

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

 

兩個構成重載關系的函數必須滿足如下關系:

1)函數名相同;

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

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

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

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

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

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

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

1)靜態字段(即靜態變量)

public static int nianling;

2)靜態方法(即靜態函數)

定義

 

復制代碼代碼如下:

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

 

【注意事項】

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

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

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

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


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 库伦旗| 乾安县| 长葛市| 汉寿县| 揭西县| 田阳县| 淮北市| 文水县| 昆明市| 基隆市| 昭通市| 凤阳县| 扬州市| 东山县| 泸溪县| 虹口区| 腾冲县| 邵阳县| 叶城县| 林周县| 离岛区| 宜州市| 渑池县| 哈巴河县| 怀来县| 开远市| 涟水县| 赫章县| 休宁县| 温州市| 阿拉尔市| 镇沅| 浦北县| 石首市| 靖州| 科技| 平利县| 天等县| 肥东县| 新竹县| 金寨县|