namespace-C#命名空间

  • 博主写作不容易,孩子需要您鼓励
  • 万水千山总是情 , 先点个赞行不行

C#程序是利用命名空间组织起来的。命名空间既做程序的内部组织系统,又用做外部组织系统。就像一个国家为了便于管理,分成多个省份一样。

声明命名空间

命名空间是.NET 避免名称冲突的一种方式。例如,定义类Phone来表示手机,同时其他人也可以定义一个Phone类,只要二者不在同一个命名空间中,就不引起命名冲突。在一个命名空间中可以有多个类、结构、接口等。在同一个命名空间中,类名、结构、接口等不可重名。

  • 语法格式如下:
  • namespace 命名空间名称{//命名空间主体}
    

    如下程序:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;namespace test
    {class Program{static void Main(string[] args){Student Stu1;Stu1.stuNum = "14031403";Stu1.stuName = "小明";Stu1.stuAge = 19;Stu1.stuClass = 1;Stu1.stuGrade = 12;Console.WriteLine("结构体演示");Console.WriteLine("学生 " + Stu1.stuName.ToString() + ":");Console.WriteLine("学号:{0},年龄:{1},年级:{2},班级:{3}",Stu1.stuNum,Stu1.stuAge,Stu1.stuGrade,Stu1.stuClass);Stu1.ChengeStudentInf("14031403", "小明", 19, 1, 13);Console.WriteLine("调用结构体方法演示");Console.WriteLine("学生 " + Stu1.stuName.ToString() + ":");Console.WriteLine("学号:{0},年龄:{1},年级:{2},班级:{3}", Stu1.stuNum, Stu1.stuAge, Stu1.stuGrade, Stu1.stuClass);Student stu2 = new Student("14081408", "小王", 18, 3, 12);Console.WriteLine("调用结构体构造函数演示");Console.WriteLine("学生 " + stu2.stuName.ToString() + ":");Console.WriteLine("学号:{0},年龄:{1},年级:{2},班级:{3}", stu2.stuNum, stu2.stuAge, stu2.stuGrade, stu2.stuClass);Console.ReadKey();}}public struct Student                   //定义结构体Student{public String stuNum;               //定义结构成员表示学生学号public String stuName;              //定义结构成员表示学生名字public int stuAge;                  //定义结构成员表示学生年龄public int stuClass;                //定义结构成员表示学生班级public int stuGrade;                //定义结构成员表示学生年级public Student(String stuNum, String stuName, int stuAge, int stuClass, int stuGrade){                                   //结构体的构造函数,用参数给成员赋值this.stuNum = stuNum;this.stuName = stuName;this.stuAge = stuAge;this.stuClass = stuClass;this.stuGrade = stuGrade;}public void ChengeStudentInf(String stuNum, String stuName, int stuAge, int stuClass, int stuGrade){                                   //结构体的方法函数,用参数改变成员的值this.stuNum = stuNum;this.stuName = stuName;this.stuAge = stuAge;this.stuClass = stuClass;this.stuGrade = stuGrade;}}}
    

    namespace test就是定义了test命名空间。
    命名空间不过是数据类型的一种组合方式,但命名空间中所有数据类型的名称都会自动加上该命名空间的名字作为其前缀。命名空间还可以相互嵌套。如果没有显示提供命名空间,则默认用该项目名称作为命名空间。

    using关键字

    把一个类型放在命名空间中,可以有效地给这个类型制定一个较长的名称,该名称包括类型的命名空间,后面是句点“.”和类型的名称。

  • 语法格式如下:
  • using 命名空间名称;
    

    引入命名空间后,就可以在代码中直接引入命名空间中类型的名字了。
    如下:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;namespace test
    {class Program{static void Main(string[] args){Student Stu1;Stu1.stuNum = "14031403";Stu1.stuName = "小明";Stu1.stuAge = 19;Stu1.stuClass = 1;Stu1.stuGrade = 12;Console.WriteLine("结构体演示");Console.WriteLine("学生 " + Stu1.stuName.ToString() + ":");Console.WriteLine("学号:{0},年龄:{1},年级:{2},班级:{3}",Stu1.stuNum,Stu1.stuAge,Stu1.stuGrade,Stu1.stuClass);Stu1.ChengeStudentInf("14031403", "小明", 19, 1, 13);Console.WriteLine("调用结构体方法演示");Console.WriteLine("学生 " + Stu1.stuName.ToString() + ":");Console.WriteLine("学号:{0},年龄:{1},年级:{2},班级:{3}", Stu1.stuNum, Stu1.stuAge, Stu1.stuGrade, Stu1.stuClass);Student stu2 = new Student("14081408", "小王", 18, 3, 12);Console.WriteLine("调用结构体构造函数演示");Console.WriteLine("学生 " + stu2.stuName.ToString() + ":");Console.WriteLine("学号:{0},年龄:{1},年级:{2},班级:{3}", stu2.stuNum, stu2.stuAge, stu2.stuGrade, stu2.stuClass);Console.ReadKey();}}public struct Student                   //定义结构体Student{public String stuNum;               //定义结构成员表示学生学号public String stuName;              //定义结构成员表示学生名字public int stuAge;                  //定义结构成员表示学生年龄public int stuClass;                //定义结构成员表示学生班级public int stuGrade;                //定义结构成员表示学生年级public Student(String stuNum, String stuName, int stuAge, int stuClass, int stuGrade){                                   //结构体的构造函数,用参数给成员赋值this.stuNum = stuNum;this.stuName = stuName;this.stuAge = stuAge;this.stuClass = stuClass;this.stuGrade = stuGrade;}public void ChengeStudentInf(String stuNum, String stuName, int stuAge, int stuClass, int stuGrade){                                   //结构体的方法函数,用参数改变成员的值this.stuNum = stuNum;this.stuName = stuName;this.stuAge = stuAge;this.stuClass = stuClass;this.stuGrade = stuGrade;}}}
    
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    

    这就是在引入命名空间。

    如果Using指令引用的两个命名空间包含同名的类,就必须使用完整的名字,以确保编译器知道访问哪个类型。就像一班和二班都有一个叫黎明的学生,开校大会点名时就要说清楚是一班的还是二班的黎明。建议在大多数情况下,都至少要提供两个嵌套的命名空间名称,第一是公司名,第二是技术名称或软件包名称,而类是其中的一个成员。

    • 博主简介:
    • 工业自动化上位机软件工程师、机器视觉算法工程师、运动控制算法工程师。目前从业于智能制造自动化行业。 博主邮箱:2296776525@qq.com
    • 帮忙点个赞吧。哈哈。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/254290.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

NKU 专题一 题解

A - Flip Game 总的情况数只有2^16次方种&#xff0c;显然直接bfs就可以了 1 #include<iostream>2 #include<queue>3 #include<cstring>4 using namespace std;5 int W,B,start;6 bool have[1000000];7 struct plot{8 int n,step;9 }; 10 void input(int…

僵尸进程(转)

前面的文章中&#xff0c;我们已经了解了父进程和子进 程的概念&#xff0c;并已经掌握了系统调用exit的用法&#xff0c;但可能很少有人意识到&#xff0c;在一个进程调用了exit之后&#xff0c;该进程并非马上就消失掉&#xff0c;而是留下一个称为僵尸进 程&#xff08;zomb…

ComblockEngine 引擎实践

comblockEngine 参考资料 官方网址 学习备注 熟悉内容 1.python 的字符串操作 2.flags 属性的作用域 flags等 问题每天 1 1.基本数据类型 基本类型 2.数据库表的操作 操作1 3.属性的定义在.def中。self.出来之后&#xff0c;在继承多个类的时候会不会重复。应该是子类的属性覆盖…

王阳明诗歌集

此心光明&#xff0c;夫复何求。&#xff08;王阳明死前对弟子的遗言&#xff09; 0. 非常少年、非常父子 山近月远觉月小&#xff0c;便道此山大于月。若人有眼大如天&#xff0c;当见山高月更阔。—— 《蔽月山房》&#xff0c;作于12岁&#xff1b;1. 中秋 吾心自有光明月&a…

子承父业-C#继承

文章目录继承的定义和使用实例继承的特性继承的可传递性继承的单一性继承中的访问修饰符base和this关键字basethis实例博主写作不容易&#xff0c;孩子需要您鼓励 万水千山总是情 , 先点个赞行不行 继承是软件复用的一种形式。使用继承可以复用现在类的数据和行为&#xff…

MAVEN创建并打包web项目

maven项目是由一个maven project和多个maven module组成的&#xff0c;以下简介一下maven webapp的创建和打包&#xff0c;前提是你已经安装配置好maven了。打开eclipse。依照例如以下操作&#xff1a; 我们首先当然要先创建一个project。如上图选择。 如今maven project已经创…

GNU gcc的编译工具用法(转)

对大多数不从事Linux平台C语言开发的人来说&#xff0c;GNU gcc的一套工具和Linux平台的共享库的使用还是十分陌生的&#xff0c;其实我也不太熟悉&#xff0c;姑且写点基础知识&#xff0c;权当做备忘吧。 一、GNU gcc的编译工具用法 我们先来写一个简单的C程序&#xff1a;…

学界 | CVPR 2018颁布五大奖项,何恺明获年轻学者奖

年度计算机视觉和模式识别盛会CVPR&#xff08;Conference on Computer Vision and Pattern Recognition&#xff09;在美国盐湖城开幕啦&#xff01; 据统计&#xff0c;本届大会有超过3309篇大会论文投稿&#xff0c;接收979篇论文。 面对如此多的论文评审任务&#xff0c;CV…

virtual、override-蝌蚪和青蛙-C#多态

文章目录多态的概念多态的实现方法重载、重写、隐藏重载重写隐藏博主写作不容易&#xff0c;孩子需要您鼓励 万水千山总是情 , 先点个赞行不行 多态的概念 什么是多态&#xff1f; 多态一次最早用于生物学&#xff0c;指同一种族的生物具有不同的特性。比如青蛙小时候是蝌…

jvm--3.内存管理

5.JVM内存管理 JAVA虚拟机在执行java程序的过程中&#xff0c;会把它管理的内存分成若干个不同的数据区域。 ------------------------------------------------------------------------------------— | 运行时数据区 | | ----------- -------- ----------------- | | | 方法…

[BZOJ2458][BeiJing2011]最小三角形

题目描述 Description Xaviera现在遇到了一个有趣的问题。平面上有N个点&#xff0c;Xaviera想找出周长最小的三角形。由于点非常多&#xff0c;分布也非常乱&#xff0c;所以Xaviera想请你来解决这个问题。为了减小问题的难度&#xff0c;这里的三角形也包括共线的三点。 输…

Makefile中的变量

Makefile中的变量 2007-11-03 12:03Makefile中变量有以下几个特征&#xff1a; 1. Makefile中变量和函数的展开&#xff08;除规则命令行中的变量和函数以外&#xff09;&#xff0c;是在make读取makefile文件时进行的&#xff0c;这里的变量包括了使用“”定义和使用指示符“d…

小技巧集锦

2019独角兽企业重金招聘Python工程师标准>>> jackson JsonDeserialize 使用方法&#xff1a; 实现方法注解写在set方法上。 public class CustomJsonDateDeserializer extends JsonDeserializer<Date> {private SimpleDateFormat datetimeFormat new SimpleD…

interface-C#接口-统一的标准

文章目录接口的定义接口的实现实例1实例2接口的继承博主写作不容易&#xff0c;孩子需要您鼓励 万水千山总是情 , 先点个赞行不行 接口是面向对象编程的一个重要技术&#xff0c;在C#中负责实现多重继承。一个接口定义一个协定&#xff0c;实现接口类或结构体必须遵守其协定…

JMeter入门(1):JMeter总体介绍及组件介绍

一、JMeter概述 JMeter就是一个测试工具&#xff0c;相比于LoadRunner等测试工具&#xff0c;此工具免费&#xff0c;且比较好用&#xff0c;但是前提当然是安装Java环境&#xff1b;JMeter可以做(1)压力测试及性能测试&#xff1b;(2)数据库测试&#xff1b;(3)Java程序的测试…

二层交换机、三层交换机和路由器的基本工作原理和三者之间的主要区别

二层交换机:二层交换技术是发展比较成熟&#xff0c;二层交换机属数据链路层设备&#xff0c;可以识别数据包中的MAC地址信息&#xff0c;根据MAC地址进行转发&#xff0c;并将这些MAC地址与对应的端口记录在自己内部的一个地址表中。 具体如下&#xff1a; &#xff08;1&…

Unity3D:视物有点眩晕的原因

设置Main Camera 的 Field of View 为100&#xff0c;看物体总觉得很不舒服。 设置为 60 就正常了。 根本原因&#xff0c;有待于分析 转载于:https://www.cnblogs.com/makebetter/p/7063694.html

使用jQuery清空file文件域的解决方案

使用jQuery清空file文件域的解决方案 var file $("#file") file.after(file.clone().val("")); file.remove();

更改mysql最大连接数

方法一&#xff1a; 打开cmd&#xff0c;用"mysql -u root -p;"命令进入mysql, 输入命令&#xff1a;show variables like "max_connections" 显示最大连接数 更改最大连接数 : set global max_connections 5000 方法二&#xff1a; 在my.ini加上 max_co…

根据HTML5 获取当前位置的经纬度【百度地图】【高德地图】

是想让地图的定位用户位置更准确一些。 查看了介绍&#xff1a; http://www.w3school.com.cn/html5/html_5_geolocation.asp 看介绍中拿数据挺简单。 <!DOCTYPE html> <html> <body> <p id"demo">点击这个按钮&#xff0c;获得您的坐标&…