在C语言中,我们经常使用#include<stdio.h>指令来导入标准输入输出库,这确实很好理解,相当于把代码复制到当前的程序中。

但在C#语言中,当我们写Console程序时,经常在第一行导入System命名空间

 using System;

 namespace HelloWorld
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello World!");
}
}
}

问题来了,这个命名空间导入到哪里去了?但肯定不是把System命名空间的代码复制到第一行来,不懂。。。

做个小改动,把using System;这个指令移动到HelloWorld这个命名空间中,如下:

 namespace HelloWorld
{
using System;
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello World!");
}
}
}

使用dotnet run运行如下:

神奇的发现,居然可以正常的运行。在这里,using System; 指令把System命名空间导入到HelloWorld这个命名空间,然后HelloWorld中的类,都可以使用System命名空间中的类,都像使用HelloWorld命名空间自己定义的类一样。

总结,在一个源程序文件的头几行导入的命名空间(如System),指的是,在当前源程序文件中,向所有的命名空间(如HelloWorld),都导入该命名空间(如System)。

using指令都用了这么多年了,其实还真没懂!的更多相关文章

  1. 老李分享:adb发送的指令都有哪些

    老李分享:adb发送的指令都有哪些   这两天在poptest上课的时候,我们邀请了业内技术牛人为我们的学员讲解手机自动化方面的知识,每天大家都很踊跃,要学习到晚上11点多才能,有的学员跟我说都累傻了 ...

  2. 这都Java15了,Java7特性还没整明白?

    「MoreThanJava」 宣扬的是 「学习,不止 CODE」,本系列 Java 基础教程是自己在结合各方面的知识之后,对 Java 基础的一个总回顾,旨在 「帮助新朋友快速高质量的学习」. 当然 ...

  3. Dart Essentials(读书笔记)——这本书非常大篇幅都在谈AngularDart,Zones概念没谈到

    Dart Essentials 文件夹 1 Getting Started 2 Practical Dart 3 The Power of HTML5 with Dart 4 Developing a ...

  4. html5音频audio对象处理以及ios微信端自动播放和息屏后唤醒的判断---可供参考(功能都完整实现了,只是细节还没处理的很好)

    // html模版中的 此处结合了weui样式整合的微信手机端片段代码(不可直接粘贴复制进行使用)里面含有一些php的写法,可直接略过..###重点参考js代码### <div> < ...

  5. 测不准的程序员(Heisenberg Developers)

    摘译自http://mikehadlow.blogspot.co.uk/2014/06/heisenberg-developers.html   ——“你无法在不改变他们状态的情况下观察一个开发者” ...

  6. 《linux设备驱动开发详解》笔记——7并发控制

    linux中并发无处不在,底层驱动需要考虑. 7.1 并发与竞争 7.1.1 概念 并发:Concurrency,多个执行单元同时.并行执行 竞争:Race Condistions,并发的执行单元对共 ...

  7. Linux学习-文件基础权限

    文件基本权限 drwxr-xr-x 第一个字符表示文件类型 d:表示是一个目录.-:表示这是一个普通的文件.l: 表示这是一个符号链接文件,实际上它指向另一个文件.b.c:分别表示区块设备和其他的外围 ...

  8. MNIST手写数字数据库

    手写数字库很容易建立,但是总会很浪费时间.Google实验室的Corinna Cortes和纽约大学柯朗研究所的Yann LeCun建有一个手写数字数据库,训练库有60,000张手写数字图像,测试库有 ...

  9. (五)乱入之如何使用MNIST数据库

    (五)乱入之如何使用MNIST数据库 今天花了整整一天时间查各种资料,终于搞清楚了怎么使用MNIST数据库.哈哈,MNIST,是不是高端洋气上档次?是不是不知道是什么东东? MNIST是一个据说很出名 ...

随机推荐

  1. MySql社区版和企业版的区别

    1.社区版的免费,出问题MySql公司概不负责,是企业版的测试版,功能却没有企业版功能完善. 2.企业版的收费,并且价格不便宜,标准版2000美元,企业版5000美元,高级集群版10000美元(6万人 ...

  2. [C语言] 数据结构-逻辑结构和物理结构

    数据结构:相互之间存在一种或多种特定关系的数据元素的集合 1.数据结构分为逻辑结构和物理结构 集合结构:集合结构中的数据元素除了同属于一个集合外,他们之间没有其他关系 线性结构:线性结构中的数据元素之 ...

  3. ORACLE数据库数据的备份与恢复

    原创作品,转自请在文字开头显眼位置注明出处:https://www.cnblogs.com/sunshine5683/p/10052949.html 数据备份恢复在数据库管理中至关重要,今天,总结一下 ...

  4. AutoFac简介

    在.NET上现在存在许多的依赖注入容器, 如:Castle Windsor.StructureMap.Autofac .Unity. 这里主要介绍一下Autofac,Autofac和其他容器的不同之处 ...

  5. python学习之老男孩python全栈第九期_数据库day001知识点总结 —— MySQL操作数据库以及数据表、基本数据类型、基本增删改查、外键定义以及创建

    一. 学习SQL语句规则以及外键 1. 操作文件夹 create database db2; 创建文件夹 create database db2 default charset utf8; 创建文件夹 ...

  6. Linux安装配置mysql

    1.假设已经有mysql-5.5.10.tar.gz以及cmake-2.8.4.tar.gz两个源文件 (1)先安装cmake(mysql5.5以后是通过cmake来编译的) [root@ rhel5 ...

  7. thymeleaf 标签使用方法

    使用thymeleaf首先添加依赖,<dependency><groupId>org.springframework.boot</groupId><artif ...

  8. drupal7 formAPI给元素加css样式

    比如,我定义了一个表单元素,名字叫做包库开始日期, $form['starttime_baoyue']=array( '#type'=>'textfield', '#title'=>t(' ...

  9. 使用 RamMap 清理内存 How to Use RamMap to Empty System Working Set

    使用 RamMap 清理内存 In this post I want to introduce RamMap by Microsoft. It’s a free tool you can use to ...

  10. Flutter: 图解 ListView 的多种绑定方式

       小菜昨天刚学习了一下底部状态栏 BottomNavigationBar 的基本使用方法,今天学习一下 ListView 的基本用法.       小菜觉得 Flutter 中 ListView ...