欧美成人精品手机在线观看_69视频国产_动漫精品第一页_日韩中文字幕网 - 日本欧美一区二区

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

C#基礎:命名空間與using用法

admin
2023年11月1日 15:2 本文熱度 835

本期內容:

1、什么是命名空間

2、命名空間的內嵌寫法用法

3、using關鍵字的用法

4、命名空間、類、函數、變量之間的關系


一、什么是命名空間


    命名空間用于在最高邏輯級別組織代碼。它們對暴露給其他程序和應用程序的編程元素進行分類和呈現。在命名空間中,我們可以聲明另一個命名空間、類、接口、結構、枚舉或委托。


    我們不能定義諸如屬性、變量和事件之類的項目。這些項目必須在結構或類等容器中聲明。在使用諸如類庫之類的大型對象組時,命名空間可以防止歧義并簡化引用。


    我們不能定義諸如屬性、變量和事件之類的項目。這些項目必須在結構或類等容器中聲明。在使用諸如類庫之類的大型對象組時,命名空間可以防止歧義并簡化引用。


注意:不能將頂級語句與命名空間一起使用。


    命名空間的本意是為了讓代碼結構更清晰,也順便解決了類重名的問題。Java開發中不需要命名空間是因為java類是靠包名來區分的,而JS這類的語言如果要實現區分同名對象就需要使用命名空間的思路設計代碼。C#中提供了一套命名空間的規則,具體如下:

定義和使用命名空間:

using System;

using first_space;
namespace first_space{   class ClassA   {      public void func()      {         Console.WriteLine("第一個命名空間ClassA的方法被執行");      }   }   class ClassB   {      public void func()      {         Console.WriteLine("第一個命名空間ClassB的方法被執行");      }   }}namespace second_space{   class ClassA   {      public void func()      {         Console.WriteLine("Inside second_space");      }   }}  
class TestClass{  static void Main(string[] args)  {    // 需要區分命名空間加命名空間,類名前面加了命名空間可以不使用using語句引用    first_space.ClassA fc = new first_space.namespace_cl();    second_space.ClassA sc = new second_space.namespace_cl();    fc.func();    sc.func();    // 不需要區分命名空間直接用類名,前提是要加using語句引用這個命名空間    ClassB cb = new ClassB();    cb.func();
   Console.ReadKey();  }}


二、命名空間的內嵌寫法用法


    不言而喻其實就是在一個命名空間內嵌套一個另外的命名空間,直接看實例:

using System;using SomeNameSpace;using SomeNameSpace.Nested;
namespace SomeNameSpace{    public class MyClass    {        static void Main()        {            Console.WriteLine("In SomeNameSpace");            Nested.NestedNameSpaceClass.SayHello();        }    }
   // 內嵌命名空間    namespace Nested      {        public class NestedNameSpaceClass        {            public static void SayHello()            {                Console.WriteLine("In Nested");            }        }    }}//執行結果如下://In SomeNameSpace//In Nested


三、using關鍵字的用法


using關鍵字最常見的使用方法是引用命名空間,但也有一些其他的用法:


01、using static 指令

指定無需指定類型名稱即可訪問其靜態成員的類型

using static System.Math;var = PI; // 直接使用System.Math.PI

02、using起別名

using Project = PC.MyCompany.Project;

03、using語句

將實例與代碼綁定,這時的using已經不是針對命名空間的操作了,我們可以把它看成一個代碼塊。在()中聲明一些變量,在{}中使用這些變量,{}中的代碼會被放在一段try代碼中,而這段代碼執行完畢后會使用finally的方式調用所聲明變量的Dispose方法(只有實現了IDisposable接口的類才可以在using代碼塊中聲明,因為要調用Dispose方法)。

using System;

using UnityEngine;
namespace Y7PLAY.FlyingSB2{    public class MyClass : IDisposable    {        public void MyFun()        {        }        public void Dispose()        {            throw new NotImplementedException();        }    }    public class Testscript : MonoBehaviour    {        // Start is called before the first frame update        void Start()        {            using (MyClass t1 = new MyClass())// 聲明變量            {        t1.MyFun();//使用變量            }// 代碼塊結束后自動調用生成對象的Dispose方法          // 這段代碼與上面那段代碼相等,使用using語句更加簡潔      MyClass t2 = null;            try            {                t2 = new MyClass();                t2.MyFun();            }            finally            {                t2.Dispose();            }        }    }}


四、命名空間、類、函數、變量之間的關系


關于他們之間的關系我也是捋了很久,以下僅代表我個人觀點:


1.命名空間 namespace 中可包含多個類 class,命名空間將這些類打包起來。一個命名空間想調用另一個命名空間中的類時,就需要首先使用using+命名空間名字 聲明命名空間。


2.類通過class關鍵字定義,在類中有變量和函數。變量和函數不能寫到命名空間中。


3.函數,可以算是類的功能,一個類中通常有多個函數,實現多種功能。就比如電視機是一個類,然后電視機這個類的函數也就是它的功能就有,播放視頻、發出聲音、切換頻道,等等。要注意的是,在類中通常我們會看到一個和類同名的函數,它沒有返回值,也通常沒有輸入參數(形參),這個函數叫做構造函數,它的作用一般就是初始化類的一些成員變量,默認是沒有形參的,不過如果有需要可以將其重載為有形參的(直接添加所需形參)。其他的與類不同命,且具有返回值的函數叫做類的成員函數,實現各種類的功能。


4.變量,定義在類里面但是在函數外面的變量稱為成員變量,它在整個類中一直存在;定義在函數內部的變量叫做局部變量,只存在于當前函數中。成員變量占用的內存比局部的大,只需要在函數里面用一下的變量一般定義為局部就好了。關于內存占用的問題以后有機會再細說。


該文章在 2023/11/1 15:10:56 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved