中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

做vi的網(wǎng)站cpu優(yōu)化軟件

做vi的網(wǎng)站,cpu優(yōu)化軟件,深圳標(biāo)識(shí)設(shè)計(jì)公司,微信分銷系統(tǒng)價(jià)格目錄 一、構(gòu)造函數(shù)的作用 二、構(gòu)造函數(shù)的特征 三、三種構(gòu)造函數(shù)介紹 1、實(shí)例構(gòu)造函數(shù) 2、靜態(tài)構(gòu)造函數(shù) 3、私有構(gòu)造函數(shù) 一、構(gòu)造函數(shù)的作用 構(gòu)造函數(shù)用來(lái)創(chuàng)建對(duì)象,并且可以在構(gòu)造函數(shù)中對(duì)此對(duì)象進(jìn)行初始化。構(gòu)造函數(shù)具有與類相同的名稱,它通常用來(lái)…

目錄

一、構(gòu)造函數(shù)的作用

二、構(gòu)造函數(shù)的特征

三、三種構(gòu)造函數(shù)介紹

1、實(shí)例構(gòu)造函數(shù)

2、靜態(tài)構(gòu)造函數(shù)

3、私有構(gòu)造函數(shù)


一、構(gòu)造函數(shù)的作用

? ? ? ?構(gòu)造函數(shù)用來(lái)創(chuàng)建對(duì)象,并且可以在構(gòu)造函數(shù)中對(duì)此對(duì)象進(jìn)行初始化。構(gòu)造函數(shù)具有與類相同的名稱,它通常用來(lái)初始化對(duì)象的數(shù)據(jù)成員。

? ? ? ? C#中構(gòu)造函是在創(chuàng)建給定類型的對(duì)象時(shí)執(zhí)行的類方法。構(gòu)造函數(shù)是一個(gè)特殊的方法,無(wú)論什么時(shí)候,只要使用new運(yùn)算符實(shí)例化對(duì)象,并且不為 new 提供任何參數(shù),就會(huì)調(diào)用默認(rèn)構(gòu)造函數(shù)。除非類是靜態(tài)的,否則C#編譯器將為無(wú)構(gòu)造函數(shù)的類提供一個(gè)公共的默認(rèn)構(gòu)造函數(shù),以便該類可以實(shí)例化。在new實(shí)例化類的過(guò)程中,會(huì)執(zhí)行類內(nèi)對(duì)應(yīng)的構(gòu)造函數(shù)進(jìn)行初始化,若無(wú)構(gòu)造函數(shù)的,則會(huì)自動(dòng)調(diào)用無(wú)參默認(rèn)構(gòu)造函數(shù),靜態(tài)構(gòu)造函數(shù)會(huì)在創(chuàng)建第一個(gè)實(shí)例或引用任何靜態(tài)成員之前,將自動(dòng)調(diào)用靜態(tài)構(gòu)造函數(shù)以初始化類。

構(gòu)造函數(shù)的分類可以為:實(shí)例構(gòu)造函數(shù)、靜態(tài)構(gòu)造函數(shù)、私有構(gòu)造函數(shù)

二、構(gòu)造函數(shù)的特征

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace ConsoleApp1
{class Program{static void Main(string[] args){student st = new student(10, "lihua") { ID = 10, number = 5 };//構(gòu)造函數(shù)可以在實(shí)例化過(guò)程中初始化私有的屬性,{ }大括號(hào)可以初始化公有屬性的數(shù)據(jù)st.ccn();st.Info();Console.Read();}}public class student{private string name;private int age;public int ID;public int number;public student(){ }public student(int age,string name){this.age = age;this.name = name;}public void ccn(){Console.WriteLine("該學(xué)生的名字為:"+name+"   "+"年齡為:"+age);}public void Info(){Console.WriteLine("該學(xué)生的學(xué)號(hào)為:" + ID + "   " + "名次為:" + number);}}
}
  1. 構(gòu)造函數(shù)可以有重載!
  2. 構(gòu)造函數(shù)沒(méi)有返回值,連void也不能寫。
  3. ?構(gòu)造函數(shù)的名稱必須跟類名一樣。
  4. 構(gòu)造函數(shù)的訪問(wèn)修飾符一般情況下訪問(wèn)修飾符為public(當(dāng)然也有private)。
  5. 構(gòu)造函數(shù)不能直接被調(diào)用,必須通過(guò)關(guān)鍵字new在創(chuàng)建對(duì)象時(shí)自動(dòng)調(diào)用。
  6. 不帶參數(shù)的構(gòu)造函數(shù)稱為“默認(rèn)構(gòu)造函數(shù)”。無(wú)論何時(shí),只要使用new運(yùn)算符實(shí)例化對(duì)象,并且不為new提供任何參數(shù),就會(huì)調(diào)用默認(rèn)構(gòu)造函數(shù)。(即創(chuàng)建構(gòu)造方法(函數(shù))后,在類當(dāng)中會(huì)生成一個(gè)一默認(rèn)的無(wú)參數(shù)的構(gòu)造函數(shù),但是當(dāng)你寫個(gè)新的構(gòu)造函數(shù)之后,不管是有參數(shù)的還是無(wú)參數(shù)的,那個(gè)默認(rèn)的無(wú)參數(shù)的構(gòu)造函數(shù)都被干掉了)。
  7. 如果一個(gè)類中定義了有參構(gòu)造函數(shù),實(shí)例化時(shí)需要調(diào)用無(wú)參構(gòu)造函數(shù),這時(shí)我們就必須定義一個(gè)顯式無(wú)參數(shù)構(gòu)造函數(shù),否則運(yùn)行會(huì)報(bào)錯(cuò)。

三、三種構(gòu)造函數(shù)介紹

1、實(shí)例構(gòu)造函數(shù)


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;namespace _2022_07_19
{class Student{public Student(string name, int age, char gender, int id){this.Name = name;this.Age = age;this.Gender = gender;this.Id = id;}public string Name;public int Age;public char Gender;public int Id;public Student(string name, int age, char gender){this.Name = name;this.Age = age;this.Gender = gender;}public void SayHello1(){Console.WriteLine("我叫{0},我今年{1},我是{2}生,我的學(xué)號(hào)是{3}。",Name,Age,Gender,Id);}public void SayHello2(){Console.WriteLine("我叫{0},我今年{1},我是{2}生。", Name, Age, Gender);}}
}

?注意:1、定義了有參構(gòu)造函數(shù),則不能再使用無(wú)參默認(rèn)構(gòu)造函數(shù),也就是在new實(shí)例化的時(shí)候必須在構(gòu)造函數(shù)內(nèi)傳入?yún)?shù)。

2、構(gòu)造函數(shù)可以重載,在定義了有參構(gòu)造函數(shù)后可以重寫一個(gè)無(wú)參構(gòu)造函數(shù),就可以使用無(wú)參構(gòu)造函數(shù)了,否則將報(bào)錯(cuò)。

2、靜態(tài)構(gòu)造函數(shù)

? ? ?在C#中,可以為類定義靜態(tài)構(gòu)造函數(shù),這種構(gòu)造函數(shù)只執(zhí)行一次。編寫靜態(tài)構(gòu)造函數(shù)的主要原因是類有一些靜態(tài)字段或?qū)傩?#xff0c;需要在第一次使用類之前,從外部源中初始化這些靜態(tài)字段或?qū)傩?。在定義靜態(tài)構(gòu)造函數(shù)時(shí),不能設(shè)置訪問(wèn)修飾符,因?yàn)槠渌鸆#代碼從來(lái)不會(huì)調(diào)用它,它只在引用類之前執(zhí)行一次;另外,靜態(tài)構(gòu)造函數(shù)不能帶任何參數(shù),而且一個(gè)類中只能有一個(gè)靜態(tài)構(gòu)造函數(shù),它只能訪問(wèn)靜態(tài)成員,不能訪問(wèn)實(shí)例成員。? 在類中,靜態(tài)構(gòu)造函數(shù)和無(wú)參數(shù)的實(shí)例構(gòu)造函數(shù)是可以共存的,因?yàn)殪o態(tài)構(gòu)造函數(shù)是在加載類時(shí)執(zhí)行的,而無(wú)參數(shù)的實(shí)例構(gòu)造函數(shù)是在創(chuàng)建類的對(duì)象時(shí)執(zhí)行的。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace ConsoleApp1
{class Program{static void Main(string[] args){student st = new student(10, "lihua") { ID = 10, number = 5 };st.ccn();st.Info();Console.Read();}}public class student{private string name;private int age;public int ID;public int number;public student(){ }static student(){Console.WriteLine("這里是靜態(tài)構(gòu)造函數(shù)");}public student(int age,string name){this.age = age;this.name = name;}public void ccn(){Console.WriteLine("該學(xué)生的名字為:"+name+"   "+"年齡為:"+age);}public void Info(){Console.WriteLine("該學(xué)生的學(xué)號(hào)為:" + ID + "   " + "名次為:" + number);}}
}

  1. 靜態(tài)構(gòu)造函數(shù)不使用訪問(wèn)修飾符或不具有參數(shù)。
  2. 在創(chuàng)建第一個(gè)實(shí)例或引用任何靜態(tài)成員之前,將自動(dòng)調(diào)用靜態(tài)構(gòu)造函數(shù)以初始化類。
  3. 不能直接調(diào)用靜態(tài)構(gòu)造函數(shù)。
  4. 無(wú)法控制在程序中執(zhí)行靜態(tài)構(gòu)造函數(shù)的時(shí)間。
  5. 靜態(tài)構(gòu)造函數(shù)的一種典型用法是在類使用日志文件且將構(gòu)造函數(shù)用于將條目寫入到此文件中時(shí)使用。
  6. 靜態(tài)構(gòu)造函數(shù)對(duì)于創(chuàng)建非托管代碼的包裝類也非常有用,這種情況下構(gòu)造函數(shù)可調(diào)用 LoadLibrary 方法。
  7. 如果靜態(tài)構(gòu)造函數(shù)引發(fā)異常,運(yùn)行時(shí)將不會(huì)再次調(diào)用該函數(shù),并且類型在程序運(yùn)行所在的應(yīng)用程序域的生存期內(nèi)將保持未初始化。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;namespace ConsoleApp2
{class Program{public static int X = 0;//靜態(tài)變量//實(shí)例構(gòu)造函數(shù)public Program(){X = 1;}//靜態(tài)構(gòu)造函數(shù)static Program(){X = 2;//第二步,執(zhí)行靜態(tài)構(gòu)造函數(shù)}//第一步,程序入口Main最先執(zhí)行,然后執(zhí)行靜態(tài)變量public static int X = 0static void Main(string[] args){Console.WriteLine(X);//結(jié)果為2Program dd = new Program();//第三步,執(zhí)行構(gòu)造函數(shù)Console.WriteLine(X);//結(jié)果為1Console.ReadLine();}}
}

??????調(diào)用類的靜態(tài)函數(shù)時(shí)的執(zhí)行順序:

  • 靜態(tài)變量==>靜態(tài)構(gòu)造函數(shù)==>實(shí)例構(gòu)造函數(shù)
  • 靜態(tài)變量==>靜態(tài)構(gòu)造函數(shù)==>靜態(tài)函數(shù)

????????那么調(diào)用類的實(shí)例函數(shù)時(shí)的執(zhí)行順序則是:

  • 非靜態(tài)變量==>實(shí)例構(gòu)造函數(shù)==>實(shí)例函數(shù)

3、私有構(gòu)造函數(shù)

? ? ? ?私有構(gòu)造函數(shù)是一種特殊的實(shí)例構(gòu)造函數(shù)。 它通常只在包含靜態(tài)成員的類中。 如果類具有一個(gè)或多個(gè)私有構(gòu)造函數(shù)而沒(méi)有公共構(gòu)造函數(shù),則在其他類(除嵌套類外)中無(wú)法進(jìn)行實(shí)例化。


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;namespace ConsoleApp2
{class Program{int i = 0;private Program(){i = 9;}static void Main(string[] args){Program ss = new Program();Console.WriteLine($"i={ss.i}");//運(yùn)行結(jié)果:i=9Console.ReadLine();}}class person{//Program ddd = new Program();//注釋打開(kāi)會(huì)報(bào)錯(cuò),錯(cuò)誤信息:不可訪問(wèn),因?yàn)樗鼙Wo(hù)級(jí)別限制。因?yàn)樗接袠?gòu)造函數(shù)無(wú)法在類的外面實(shí)例化。}

參考文獻(xiàn):

【精選】C# 第五章『面向?qū)ο蟆弧舻?節(jié):構(gòu)造函數(shù)(方法)_c#構(gòu)造方法-CSDN博客?

http://www.risenshineclean.com/news/50400.html

相關(guān)文章:

  • 便宜建站怎么自己找外貿(mào)訂單
  • 揭陽(yáng)購(gòu)物網(wǎng)站開(kāi)發(fā)設(shè)計(jì)東莞網(wǎng)絡(luò)推廣培訓(xùn)
  • 青島網(wǎng)站建設(shè)的流程有哪些關(guān)鍵詞排名工具
  • 做網(wǎng)站就必須要開(kāi)公司嗎珠海網(wǎng)站建設(shè)優(yōu)化
  • 免費(fèi)的網(wǎng)站在線客服軟件營(yíng)銷案例100例小故事及感悟
  • 網(wǎng)站開(kāi)發(fā)的英文文獻(xiàn)互聯(lián)網(wǎng)營(yíng)銷師培訓(xùn)課程
  • 新手想寫小說(shuō)怎么做網(wǎng)站互聯(lián)網(wǎng)廣告平臺(tái)排名
  • 電商商城系統(tǒng)免費(fèi)seo排名點(diǎn)擊器
  • 汽車網(wǎng)站建設(shè)論壇網(wǎng)絡(luò)營(yíng)銷渠道有哪三類
  • jquery 的網(wǎng)站模板seo手機(jī)搜索快速排名
  • 哪個(gè)網(wǎng)站可以做水果銷售代理深圳知名seo公司
  • 一般做網(wǎng)站的在哪里找代寫稿子的平臺(tái)
  • wordpress django廣東seo快速排名
  • 嘉祥網(wǎng)站建設(shè)哪家好游戲代理
  • 微網(wǎng)站功能介紹網(wǎng)站搭建公司哪家好
  • 網(wǎng)站建設(shè)規(guī)劃圖app聯(lián)盟推廣平臺(tái)
  • wordpress付費(fèi)主題百度seo公司興田德潤(rùn)
  • 通遼北京網(wǎng)站建設(shè)地推接單平臺(tái)
  • wordpress可以做seo嗎北京seo專員
  • Cocos做網(wǎng)站百度小說(shuō)風(fēng)云榜
  • 大連建設(shè)網(wǎng)站制作杭州seo價(jià)格
  • 重慶市建筑網(wǎng)站建設(shè)南通網(wǎng)站快速收錄
  • 網(wǎng)站后臺(tái)模板 jquery圖們網(wǎng)絡(luò)推廣
  • 做網(wǎng)站怎么兼職網(wǎng)上培訓(xùn)課程平臺(tái)
  • 男女直接做性視頻網(wǎng)站上海疫情最新數(shù)據(jù)
  • 域名備案掉了網(wǎng)站還可以用廣州關(guān)鍵詞快速排名
  • 怎么到國(guó)外網(wǎng)站去接模具訂單做東莞seo網(wǎng)站推廣建設(shè)
  • 做網(wǎng)站的軟件word網(wǎng)站排名查詢工具有哪些
  • 手機(jī)網(wǎng)站會(huì)員識(shí)別功能縱橫seo
  • 專門做淘寶特價(jià)的網(wǎng)站紹興百度seo排名