加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

C# 方法与参数 常见命名空间汇总 using的使用 main方法参数

发布时间:2020-12-16 01:16:50 所属栏目:百科 来源:网络整理
导读:本文主要讲 C# 常见命名空间 using static 指令 调用静态方法 嵌套命名空间作用域 别名 Main() 方法 C# 常见命名空间 ? 命名空间 作用 System 创建文件是默认引入,处理数学计算、、环境变量、输出控制台、垃圾回收器及一些常见的异常和特征。 System.Collec

本文主要讲

  • C# 常见命名空间
  • using static 指令 && 调用静态方法
  • 嵌套命名空间&&作用域
  • 别名
  • Main() 方法

C# 常见命名空间

?

命名空间 作用
System

创建文件是默认引入,处理数学计算、、环境变量、输出控制台、垃圾回收器及一些常见的异常和特征。

System.Collections

同:都是处理对象集合(列表和字典等)

异:后者是使用?泛型的强类型集合

System.Collections.Generic?
System.Data

用于数据库处理

例如 ADO.NET

System.Data.Odbc

System.Data.Oracle

Client System.Data.OleDb

System.Data.SqlClient

System.IO?

  处理文件输入/输出(I/O)

  数据压缩

  端口操作

System.IO.Comoression?

System.IO.Ports?

System.Drawing

用于绘图、进行图像处理

System.Windows.Froms 包含构建用户界面和各类控件的类型
System.Windows?

WPF?UI工具包

System.Windows.Controlls
System.Windows.Shapes
System.Linq?

提供LINQ 功能(语言集成查询)

?

System.Web

构建.NET?Web应用程序,用于支持ASP.NET

System.ServiceModel?

通过WCF?API构建分布式应用程序

System.Workflow.Runtime

使用WCF?API构建支持工作流的应用程序的类型

System.Workflow.Activities
System.Threading

用来构建多线程应用程序的类型

System.Threading.Tasks

?基于任务的异步操作

System.Security?

以安全为中心的命名空间,有很多用来处理权限、加密等问题的类型

System.Xml

用于XML数据交互的类型


?

注:在C#中,引入一个命名空间时,是不能使用该命名空间的子空间。

例如,引入了System.Collections,但是不能使用System.Collections.Generic 内的类和方法。

?

其它更多不同功能的、不同分类的命名空间,推荐查看文章

https://blog.csdn.net/lidandan2016/article/details/77994232?locationNum=8&fps=1


using static 指令 && 调用静态方法

在C#中在不同命名空间的类,需要先引入该命名空间,然后new(实例化)后,才能使用。对于静态类来说,在引入命名空间后,即可直接使用。

 1 using System;
 2  System.IO;
 3 
 4 public class Test
 5 {
 6     static void Main()
 7     {
 8         int num = Add(5,6);
 9         Console.WriteLine(num);
10         Console.ReadKey();
11     }
12     int Add(int x,int y)
13 14         return x + y;
15 16 }

例如控制台用于输出字符串的方法 Console.WriteLine() ,引入 System 后,即可直接使用。在上述代码的第 9 行。

样式? ? 类.方法();? ?Console.WriteLine()

对于跟 Main 在同一个文件中的方法,必定是静态方法, 直接调用该方法名。在上述代码的第8行。

样式? 方法();? 如 Add();

?

如果不在同一命名空间的静态方法,我想直接使用 方法(); 而不是?类.方法();? ?这种形式呢?

这就需要使用 using static 指令。

using static 指令指定一种类型,无需指定类型名称即可访问其?静态成员和嵌套类型

using static System.Console;

 修改上面的示例代码,留意第9、10行

 3 using static System.Console;
        WriteLine(num);
        ReadKey();
16 }

可以直接使用?WriteLine()?了。

注:

  • 这种方式虽然可以简化长度,但是,也会容易出现很多问题,例如名称冲突、可读性降低。
  • using static 只针对静态类型有效!

?

嵌套命名空间&&作用域

命名空间也有作用域,离开作用域的类型将无法使用。但命名空间的引入,不像变量的声明那么“任性”。

命名空间的引入是使用using指令,using指令可以在命名空间外命名空间内的顶部并且在类的外面使用。

在命名空间外使用的using指令作用域是?该文件下的所有命名空间。

在命名空间内使用的using指令作用域是 该命名空间内。

下面是一个例子。

namespace a
 4      5      6  7         
        {
10             Console.WriteLine("命名空间a"11             FileInfo file = new FileInfo(文件地址12         }
14 }
 b
16 17     18 19         20 21             Console.WriteLine(命名空间b22             FileInfo file = );    //报错
23 24 25 }

?

第一行 using System; 命名空间 a、b 都能使用,然而 只在命名空间中 a 中?using System.IO; (在第四行) ,命名空间 b 是不能使用的。

?

注:

很少会这样写代码,因为根据约定,每个文件只应该有一个类型声明、在头部引入命名空间。


?别名

C# 中,可以使用using指令为命名空间或类型取一个别名,别名将在文件全范围起替代作用。

最常见用途为消除两个同名类型的歧义和缩写名称。

使用方法

using 别名 = 命名空间或类型;

  例(第二行):

using Test1 = core
 Program
 7         void Main(string[] args)
 8  9             Test1.WriteLine(测试12 }

?


?

Main 方法

Main 方法是程序入口,一般有以下四中写法:

?

  • 没有参数? 返回值为 void
    static void Main()
  • 没有参数? 返回值为 int
    static int Main()
  • 带有参数? 返回值为 void
    static void Main(string[] args)
  • 带有参数? 返回值为 int
    static int Main(string[] args)
    

      

写法的考虑是在执行程序是提供命令行参数,并在Main方法中返回状态标识符。

使用visual studio 软件开发C#,一般用不到,使用控制台应用手动编译 源代码时,提供的参数会传入Mian方法中。

C#程序中可以出现多个 Main() 方法,但必须在运行时,确定或指定入口 Main 。


?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读