C#控制台应用程序学习——3.8

一、语言概述

        1、平台相关性

                C# 主要运行在.NET 平台上。.NET 提供了一个庞大的类库,C# 程序可以方便地调用这些类库来实现各种功能,如文件操作、数据库访问、网络通信等。

        2、语法风格

                C# 的语法与 C、C++ 和 Java 有一定的相似性。例如,它使用大括号 {} 来定义代码块,使用分号 ; 结束语句。

二、C#程序的基本结构

        1、命名空间(Namespace)

                命名空间用于组织代码,避免命名冲突。

                例如:using System; 表示引入了 System 命名空间,这样在代码中就可以直接使用该命名空间下的类和方法,如 Console.WriteLine()。一个 C# 文件可以包含多个命名空间,每个命名空间可以包含类、结构、接口等成员。

        2、类(Class)

                类是面向对象编程的核心概念。它是对现实世界中实体的抽象。

                例如:public class MyClass 定义了一个名为 MyClass 的类。类中可以包含字段(Field)、属性(Property)、方法(Method)、构造函数(Constructor)等成员。

        3、方法(Method)

                方法是类中定义的功能块。

                例如:public void MyMethod() 定义了一个名为 MyMethod 的方法,它没有返回值(void)。方法体用大括号 {} 包裹,里面包含具体的代码逻辑。

        4、程序入口(Main 方法)

                一个 C# 程序必须有一个 Main 方法作为程序的入口点。

                例如:static void Main(string[] args),程序从这里开始执行。它是静态方法(static),并且通常在程序运行时由.NET 运行时环境自动调用。

三、基础程序

        1、关于System

                当我们打开我们的第一个C#程序时我们会发现以下内容:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;    

namespace Text1    //以上为命名空间(Namespace)
{
    internal class Program    //类(Class)
    {
        static void Main(string[] args)    //方法(Method)&程序入口(Main 方法)
        {
        }
    }
}

                那么我们首先来了解一下,using System 这一命名空间的作用,我们尝试删去这五行命名空间,在 Main 函数内输入指令 Console.WriteLine("Hello C#"); ,我们会发现,界面中自动生成了 using System; :

using System;

namespace Text1
{
    internal class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello C#");
        }
    }
}

                我们再强制删除 using System 命名空间,尝试运行:

                我们会收到如下报错:当前上下文中不存在名称 "Console'',但当我们将代码改成

namespace Text1
{
    internal class Program
    {
        static void Main(string[] args)
        {
            System.Console.WriteLine("Hello C#");
        }
    }
}

                我们会得到和第一行含有 using System 这一命名空间一样的效果。以上说明 System 命名空间是 C# 的核心命名空间,它包含了大量常用的类和功能。

        以下 System 命名空间是一些常见的用途:
        控制台输入输出:Console 类用于读取和写入控制台数据。
        基本数据类型:String、Int32、Double 等基本数据类型都定义在 System 命名空间中。
        异常处理:Exception 类及其派生类用于异常处理。
        数学运算:Math 类提供了基本的数学运算功能。

        2、其他命名空间

        using System.Collections.Generic;:用于泛型集合操作。
        using System.Linq;:用于语言集成查询(LINQ)。
        using System.Text;:用于字符串操作、编码转换等与文本处理相关的类和方法。
        using System.Threading.Tasks;:用于多线程和异步编程。

        3、Console.ReadKey()

                当我们在以上命名空间下,输入Console.WriteLine("Hello C#!");,将会得到“Hello C#”,但是只有一瞬间,窗口就消失了,这个时候我们应该输入第二个命令 Console.ReadKey();,在控制台程序中,它用于暂停程序执行,等待用户按下某个键再继续。

        这个时候我们就可以收获我们的第一次程序输出,Hello C#!,这也将是我们第二期新内容的主题,我们将会围绕以C#语言为中心的控制台应用程序知识,从零开始,逐步构建起完整的编程知识体系。非常开心能与大家再次相聚,在未来的日子里,让我们携手共进,一起努力,攻克每一个难题,共同成长!

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【数据结构与算法】Java描述:第三节:栈与队列

一、 栈(Stack) 1.1 概念 栈: 一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。 进行数据插入和删除操作的一端称为栈顶,另一端称为栈底。栈中的数据元素遵守先进后出的原则。 压栈:栈的插入操作叫做进栈/压栈/…

MATLAB中movmax函数用法

目录 语法 说明 示例 向量的中心移动最大值 向量的尾部移动最大值 矩阵的移动最大值 包括缺失值的移动最大值 基于样本点计算移动最大值 仅返回满窗最大值 movmax函数的功能是求得移动最大值。 语法 M movmax(A,k) M movmax(A,[kb kf]) M movmax(___,dim) M mov…

linux学习(五)(服务器审查,正常运行时间负载,身份验证日志,正在运行的服务,评估可用内存)

服务器审查 在 Linux 中审查服务器的过程包括评估服务器的性能、安全性和配置,以确定需要改进的领域或任何潜在问题。审查的范围可以包括检查安全增强功能、检查日志文件、审查用户帐户、分析服务器的网络配置以及检查其软件版本。 Linux 以其稳定性和安全性而闻名…

Java中的栈的实现

Java中的栈的实现--双端队列&#xff08;Deque&#xff09; 1. 解释代码2.为什么不用 Stack<Character>&#xff1f;3.使用示例4.Deque 的常用方法5.LinkedList<> 和 ArrayDeque<> 的区别和联系6. 总结 1. 解释代码 Deque<Character> st new ArrayDe…

【Andrej Karpathy 神经网络从Zero到Hero】--2.语言模型的两种实现方式 (Bigram 和 神经网络)

目录 统计 Bigram 语言模型质量评价方法 神经网络语言模型 【系列笔记】 【Andrej Karpathy 神经网络从Zero到Hero】–1. 自动微分autograd实践要点 本文主要参考 大神Andrej Karpathy 大模型讲座 | 构建makemore 系列之一&#xff1a;讲解语言建模的明确入门&#xff0c;演示…

Go_zero学习笔记

<!-- go-zero --> 安装配置 go-zero_github go-zero文档 go install github.com/zeromicro/go-zero/tools/goctllatest goctl --version // goctl version 1.7.2 windows/amd64 gopath/bin/会生成goctl的执行进程(%GOPATH%\bin设置到path环境变量中) 安装protoc&pr…

nats jetstream server code 分析

对象和缩写 jetstream导入两个对象&#xff1a;stream and consumer&#xff0c;在stream 之上构造jetstreamapi。在nats代码中&#xff0c;以下是一些常见的缩写 1.mset is stream 2.jsX is something of jetstream 3.o is consumer 代码分析 对于producer &#xff0c;发送…

高效编程指南:PyCharm与DeepSeek的完美结合

DeepSeek接入Pycharm 前几天DeepSeek的充值窗口又悄悄的开放了&#xff0c;这也就意味着我们又可以丝滑的使用DeepSeek的API进行各种辅助性工作了。本文我们来聊聊如何在代码编辑器中使用DeepSeek自动生成代码。 注&#xff1a;本文适用于所有的JetBrains开发工具&#xff0c…

豆包大模型 MarsCode AI 刷题专栏 004

007.创意标题匹配问题 难度&#xff1a;易 问题描述 在广告平台中&#xff0c;为了给广告主一定的自由性和效率&#xff0c;允许广告主在创造标题的时候以通配符的方式进行创意提交。线上服务的时候&#xff0c;会根据用户的搜索词触发的 bidword 对创意中的通配符&#xff…

Blueprint —— Blueprint Editor(二)

目录 一&#xff0c;Blueprint Header View 二&#xff0c;Blueprint Bookmarks 三&#xff0c;Blueprint Editor Defaults Tab 获取类默认值 一&#xff0c;Blueprint Header View Blueprint Header View 可将虚幻引擎蓝图类和蓝图结构体转换为C代码&#xff1b;在转换过程…

JVM组成面试题及原理

Java Virtual Machine&#xff08;JVM&#xff09;是Java程序的运行环境&#xff08;java二进制字节码的运行环境&#xff09; 好处&#xff1a; 一次编写&#xff0c;到处运行自动内存管理&#xff0c;垃圾回收机制 JVM由哪些部分组成&#xff0c;运行流程是什么&#xff1f;…

解决在windows中docker拉取镜像出现的问题

解决在windows中docker拉取镜像出现的问题 docker pull minio/minio 出现报错&#xff1a; Error response from daemon: Get "https://registry-1.docker.io/v2/": net/http: request canceled while waiting for connection (Client.Timeout exceeded while await…

MySQL基本建表操作

目录 1&#xff0c;创建数据库db_ck 1.1创建表 1.2 查看创建好的表 2,创建表t_hero 2.1 先进入数据库Db_Ck 2.1.1 这里可以看是否进入数据库: 2.2 创建表t_Hero 2.2.1 我们可以先在文本文档里面写好然后粘贴进去&#xff0c;因为直接写的话&#xff0c;错了要重新开始 …

使用Arduino和ESP8266进行基于物联网的垃圾箱监控

使用 Arduino 和 ESP8266 的基于 IOT 的垃圾箱监控系统 在这个 DIY 中,我们将制作一个基于 IOT 的垃圾箱/垃圾监控系统,该系统将通过网络服务器告诉我们垃圾桶是空的还是满的,并且您可以通过互联网从世界任何地方了解“垃圾桶”或“垃圾箱”的状态。它将非常有用,可以安装…

【Academy】HTTP 请求走私 ------ HTTP request smuggling

HTTP 请求走私 ------ HTTP request smuggling 1. 什么是 HTTP 请求走私&#xff1f;2. HTTP 请求走私漏洞是如何产生的&#xff1f;3. 如何执行 HTTP 请求走私攻击3.1 CL.TE 漏洞3.2 TE.CL 漏洞3.3 TE.TE 行为&#xff1a;混淆 TE 标头 4. 如何识别和确认 HTTP 请求走私漏洞4.…

元脑服务器的创新应用:浪潮信息引领AI计算新时代

浪潮信息的元脑 R1 服务器现已全面支持开源框架 SGLang&#xff0c;能够在单机环境下实现 DeepSeek 671B 模型的高并发性能&#xff0c;用户并发访问量超过1000。通过对 SGLang 最新版本的深度适配&#xff0c;元脑 R1 推理服务器在运行高性能模型时&#xff0c;展现出卓越的处…

蓝桥备赛(13)- 链表和 list(下)

一、动态链表 - list (了解) new 和 delete 是非常耗时的操作 在算法比赛中&#xff0c;一般不会使使用 new 和 delete 去模拟实现一个链表。 而且STL 里面的 list 的底层就是动态实现的双向循环链表&#xff0c;增删会涉及 new 和 delete&#xff0c;效率不高&#xff0c;竞赛…

【VUE2】第二期——生命周期及工程化

目录 1 生命周期 1.1 介绍 1.2 钩子 2 可视化图表库 3 脚手架Vue CLI 3.1 使用步骤 3.2 项目目录介绍 3.3 main.js入口文件代码介绍 4 组件化开发 4.1 组件 4.2 普通组件注册 4.2.1 局部注册 4.2.2 全局注册 1 生命周期 1.1 介绍 Vue生命周期&#xff1a;就是…

正则表达式梳理(基于python)

正则表达式&#xff08;regular expression&#xff09;是一种针对字符串匹配查找所定义的规则模式&#xff0c;独立于语言&#xff0c;但不同语言在实现上也会存在一些细微差别&#xff0c;下面基于python对常用的相关内容进行梳理。 文章目录 一、通用常识1.通配符ps.反义 2.…

《C++ 构造、拷贝构造与析构函数:对象的诞生、克隆与消逝之旅》

类的6个默认成员函数 构造函数 是对一个对象实例化时的初始化 例如在C语言中写的堆的时候要初始化StackInit&#xff0c;而c祖师爷写的构造函数本质上就是自动调用初始化。 构造函数默认构造函数自己写的&#xff08;符合规定的显示表达式&#xff09; 注&#xff1a;一般情况下…