C# 方法与参数 常见命名空间汇总 using的使用 main方法参数
本文主要讲
- 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(实例化)后,才能使用。对于静态类来说,在引入命名空间后,即可直接使用。
using System;
using System.IO; public class Test
{
static void Main()
{
int num = Add(, );
Console.WriteLine(num);
Console.ReadKey();
}
public static int Add(int x, int y)
{
return x + y;
}
}
例如控制台用于输出字符串的方法 Console.WriteLine() ,引入 System 后,即可直接使用。在上述代码的第 9 行。
样式 类.方法(); Console.WriteLine()
对于跟 Main 在同一个文件中的方法,必定是静态方法, 直接调用该方法名。在上述代码的第8行。
样式 方法(); 如 Add();
如果不在同一命名空间的静态方法,我想直接使用 方法(); 而不是 类.方法(); 这种形式呢?
这就需要使用 using static 指令。
using static 指令指定一种类型,无需指定类型名称即可访问其 静态成员和嵌套类型。
如
using static System.Console;
修改上面的示例代码,留意第9、10行
using System;
using System.IO;
using static System.Console;
public class Test
{
static void Main()
{
int num = Add(, );
WriteLine(num);
ReadKey();
}
public static int Add(int x, int y)
{
return x + y;
}
}
可以直接使用 WriteLine() 了。
注:
- 这种方式虽然可以简化长度,但是,也会容易出现很多问题,例如名称冲突、可读性降低。
- using static 只针对静态类型有效!
嵌套命名空间&&作用域
命名空间也有作用域,离开作用域的类型将无法使用。但命名空间的引入,不像变量的声明那么“任性”。
命名空间的引入是使用using指令,using指令可以在命名空间外、命名空间内的顶部并且在类的外面使用。
在命名空间外使用的using指令作用域是 该文件下的所有命名空间。
在命名空间内使用的using指令作用域是 该命名空间内。
下面是一个例子。
using System;
namespace a
{
using System.IO;
public class Test
{ static void Main()
{
Console.WriteLine("命名空间a");
FileInfo file = new FileInfo("文件地址");
}
}
}
namespace b
{
public class Test
{
static void Main()
{
Console.WriteLine("命名空间b");
FileInfo file = new FileInfo("文件地址"); //报错
}
}
}

第一行 using System; 命名空间 a、b 都能使用,然而 只在命名空间中 a 中 using System.IO; (在第四行) ,命名空间 b 是不能使用的。
注:
很少会这样写代码,因为根据约定,每个文件只应该有一个类型声明、在头部引入命名空间。
别名
C# 中,可以使用using指令为命名空间或类型取一个别名,别名将在文件全范围起替代作用。
最常见用途为消除两个同名类型的歧义和缩写名称。
使用方法
using 别名 = 命名空间或类型;
例(第二行):
using System;
using Test1 = System.Console;
namespace core
{
class Program
{
static void Main(string[] args)
{
Test1.WriteLine("测试");
}
}
}
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 。
C# 方法与参数 常见命名空间汇总 using的使用 main方法参数的更多相关文章
- Java中的static关键字解析(转自海子)__为什么main方法必须是static的,因为程序在执行main方法的时候没有创建任何对象,因此只有通过类名来访问。
Java中的static关键字解析 static关键字是很多朋友在编写代码和阅读代码时碰到的比较难以理解的一个关键字,也是各大公司的面试官喜欢在面试时问到的知识点之一.下面就先讲述一下static关键 ...
- 30.编写一个Shape类,具有属性:周长和面积; 定义其子类三角形和矩形,分别具有求周长的方法。 定义主类E,在其main方法中创建三角形和矩形类的对象, 并赋给Shape类的对象a、b,使用对象a、b来测试其特性。
package zuoye8; public abstract class Shape { private double zhouchang ; private double mianji ; pub ...
- 编写一个Shape类,具有属性:周长和面积; 定义其子类三角形和矩形,分别具有求周长的方法。 定义主类E,在其main方法中创建三角形和矩形类的对象, 并赋给Shape类的对象a、b,使用对象a、b来测试其特性。
package shape; public class Shape { //定义成员变量 private double zhouchang; private double mianji; public ...
- java 执行 jar 包中的 main 方法
java 执行 jar 包中的 main 方法 通过 OneJar 或 Maven 打包后 jar 文件,用命令: java -jar ****.jar执行后总是运行指定的主方法,如果 jar 中有多 ...
- Ant执行一个含有main方法的class文件
目前需要使用ant来执行一个含有main方法的class文件,并且需要通过命令来行传两个参数(start和end)到main方法. <target name="gsp" de ...
- 【细说Java】揭开Java的main方法神秘的面纱
大家都知道,main方法是Java应用程序的入口,其定义格式为: public static void main(String[] args) 可是为什么要这么定义呢?不这样定义可以么?main方法可 ...
- C#程序之Main()方法
一.Main()方法的简介 1.一般情况下,一个C#可执行程序只有一个应用程序对象(也就是就程序入口),但是在某些情况,可能会有多个应用程序对象(程序入口),如单元测试中,这个时候我们就需要通过命令行 ...
- 【细说Java】揭开Java的main方法神秘的面纱(转)
大家都知道,main方法是Java应用程序的入口,其定义格式为: public static void main(String[] args) 可是为什么要这么定义呢?不这样定义可以么?main方法可 ...
- 简述java程序中的main方法
简述main方法: 在java语言程序编写时都会涉及到一个main方法,它的格式为: public static void main(String[] args)(一般必须这么定义,这是java规范) ...
随机推荐
- dll ocx cab IE 自动安装
我们打开淘宝等网站时,IE浏览器会提示安装空间,这个控件便是用于对用户名密码进行加密的ActiveX控件.如何在我们的站点上安装如此控件,让用户可以通过简单的点击便可方便使用我们的空间呢? 下面是如何 ...
- [转]wxParse-微信小程序富文本解析组件
本文转自:https://github.com/icindy/wxParse 基本使用方法 Copy文件夹wxParse - wxParse/ -wxParse.js(必须存在) -html2json ...
- Java中用双缓冲技术消除闪烁
在Java编写具有连贯变化的窗口程序时,通常的办法是在子类中覆盖父类的paint(Graphics)方法,在方法中使用GUI函数实现窗口重绘的过程.连贯变换的窗口会不断地调用update(Graphi ...
- C#Winform实时更新数据库信息Demo(使用Scoket)
最近在贴吧上看到有个提问就是关于怎么在Winform上实时的更新数据 提问者提到的是利用Timer去轮询,但最后经过网上查了下资料,感觉Socket也是可行的, 于是就写了这个Demo 这个Demo的 ...
- 04-Tomcat体系结构与插件配置
一.发布程序详解 Context docBase:web应用的文件路径 path:URL入口 reloadable:字节码变化服务器是否重新加载web应用 二.tomcat服务器体系结构 1.Serv ...
- Spring入门(三)— AOP注解、jdbc模板、事务
一.AOP注解开发 导入jar包 aop联盟包. aspectJ实现包 . spring-aop-xxx.jar . spring-aspect-xxx.jar 导入约束 aop约束 托管扩展类和被扩 ...
- hashlib 文件校验,MD5动态加盐返回加密后字符
hashlib 文件校验 # for循环校验 import hashlib def check_md5(file): ret = hashlib.md5() with open(file, mode= ...
- ES6学习笔记(四)-数值扩展
PS: 前段时间转入有道云笔记,体验非常友好,所以笔记一般记录于云笔记中,每隔一段时间,会整理一下, 发在博客上与大家一起分享,交流和学习. 以下:
- CentOS6下docker的安装和使用
CentOS6下docker的安装和使用 Docker是一个开源的应用容器引擎,可以轻松的为任何应用创建一个轻量级的.可移植的.自给自足的容器.利用Linux的LXC.AUFS.Go语言.cgroup ...
- python Tensorflow 实现图像的卷积处理
1.convolution.py import numpy as np from sklearn.datasets import load_sample_images import tensorflo ...