第一课时之c#程序设计概述

第一章 c#程序设计概述

本章学习目标:

  • c#语言的主要特点
  • Visual Studio 2008/2017的集成开发环境
  • c#控制台应用程序和Windows窗体应用程序设计步骤
  • c#程序代码的基本书写规则和应用程序结构

1.1c#语言简介

C# 是一个简单的、现代的、通用的、面向对象的编程语言,它是由微软(Microsoft).NET公共语言运行环境中内置的核心程序设计语言。使用c#语言可以开发在.NET Framework上运行的多种应用程序,包括:控制台应用程序,Windows窗体应用程序,Web应用程序以及Web服务等。

首先写一个c#程序的基本实例:

using System;

namespace Chapter_one
{
    /* 类名为HelloWorld  */
    class HelloWOrld
    {
        /* main函数 */
        static void Main(string[] args)
        {
            /* 我的第一个c# HelloWorld程序 */
            Console.WriteLine("Hello World");
            Console.ReadLine();
        }
    }
}

1.1.1c#语言的主要特点

c#语言是Microsoft为.NET环境开发的一种全新编程工具,它集c/c++语言的强大功能,Java语言面向对象的体征以及Visual Basic语言的易用性为一体,为在.NET环境下的计算机应用提供了功能强大,全新,易用的程序设计工具。

c#语言的主要特点如下:

  • 语法简洁
  • 满足通用语言规范
  • 面向对象
  • 完整的安全性和错误处理
  • 兼容性和灵活性
  • 版本控制
  • 与Web完美结合

c#语言强大的编程功能:

  • 布尔条件(Boolean Conditions)
  • 自动垃圾回收(Automatic Garbage Collection)
  • 标准库(Standard Library)
  • 组件版本
  • 属性(Properties)和事件(Events)
  • 委托(Delegates)
  • 索引器(Indexers)
  • 条件编译(Conditional Compilation)
  • 简单的多线程(Multithreading)
  • LINQ和Lambda表达式
  • 集成Windows

1.1.2c#与其他程序设计语言的比较

c#是在吸收c/c++和java等程序设计语言优点的基础上构建出来的一种新型程序设计语言,列举c#与c/c++以及java的主要异同之处


比较内容


c#程序设计语言


c/c++程序设计语言


语言处理方式


编译成中间语言(MSIL)代码,执行时通过JIT(及时处理器)将中间代码转换为本机代码执行


直接编译成为本机可以执行的代码


指针数据


默认数据下,不使用指针数据,而是使用对类实例的引用。也可以”非托管”方式下使用指针


大量使用指针数据(特别是函数的参数中)



依赖于.NET基类


依赖于以继承和模板为基础的标准库


继承


只允许单继承,通过接口实现多继承


c++允许多继承


内存管理


使用垃圾回收机制,自动在合适的时机回收不再使用的内存空间


程序中必须显式地删除(回收)动态分配的存储空间


字符串处理


字符串是基本数据类型,提供多种处理字符串的方法


字符串处理基于数组处理方法

备注:在通用语言规范中,任何语言编写的源程序都被编译成相同的中间语言(MSIL)代码,然后由通用语言运行环境(Common Lanuage Runtime,CLR)负责执行,这种处理方式称为”托管方式”,因而这样的代码亦称为”托管代码”。


比较内容


c#程序设计语言


Java程序设计语言


语言处理和程序运行方式


c#代码编译成为中间语言(MSIL)代码,然后在通用语言运行环境(CLR)中运行,CLR的JIT编译器将中间代码编译成为本地代码执行


Java代码编译成为中间代码,通过运行环境JRE提供的Java虚拟机执行


语言功能区别


源程序文件名不受类名的限制,提供运算符重载,装箱与拆箱,方法隐藏等功能


源程序文件名受类名的限制

c#语言编写的源程序文件处理方式所示:

1.2c#控制台应用程序设计实例

控制台(Console)应用程序是利用c#语言开发的应用程序类型之一,由于不涉及windows系统的组成元素,因而结构比较简单

1.2.1c#控制台应用程序的创建

在Microsoft Visual Studio 2008/2017(简称VS 2008/2017)中创建一个c#控制台应用程序的主要步骤如下:

(1) 启动”Microsoft Visual Studio 2017”,进入VS2017集成开发环境的页面,如下

(2) 选择项目类型为控制台应用程序,并指定项目名称及其保存位置

(3) 在应用程序编辑环境中输入程序代码

(5) 调试运行程序,按F5或选择”调试”菜单组中的”启动调试”命名,执行(调试)

1.2.2c#控制台应用程序的结构

在c#程序中,一个应用程序可以由一个或者多个类组成,所有程序代码必须封装在类中。一个源程序文件中可以由一个或者多个类,但不允许将一个类拆散存放在不同的源程序文件中。在为源程序文件命名时,可以与类的名字相同,也可以不同,即源程序文件的命名不受类名限制。

一个c#控制台应用程序主要由以下几部分构成:

1.导入其他系统定义元素部分

高级程序设计语言总是依赖许多系统预定义元素,为了在c#程序中能够使用这些预定义元素,需要将这些元素导入。上面创建的控制台应用程序中,使用下述代码段导入了对其他命名空间的引用:

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

2.命名空间

使用namespace和命名空间标识符(命名空间名字)构建用户命名空间,空间的范围用一对化括号界定,如下所示:

namespace Hello      //默认情况下命名空间名与解决方案名相同
{

}

3.类

类必须包含在某个命名空间中(例如namespace Hello),使用关键字class和类标识符(类名,默认为Prograam)构建类,类的范围使用一对花括号界定,如下所示:

class Program
{

}

4.主方法

每个应用程序都有一个执行的入口,指明程序执行的开始点。c#应用程序中的入口点用主方法标识,主方法的名字为Main(),后面的括号中即使没有参数也不能省略。

static void Main(string[] args)
{

}

5.方法中的c#代码

在方法体(方法的左右括号之间)中书写实现方法逻辑功能的代码

static void Main(string[] args)
{
    Console.Write("请输入你的姓名:");
    string name = Console.ReadLine();           //输入姓名字符串赋值给name变量
    Console.WriteLine("欢迎"+name+"进入c#程序设计");
    Console.ReadLine();                       /* 使得程序设计不会自动退出调试环境 */
}

1.2.3c#程序代码的基本书写规则

1.程序代码区分字母大小写

c#是一种大小写敏感的语言,字母大小写不同的标识符被视为不同的标识符。

2.语句书写规则

(1)每个语句都必须用一个分号(“;”)作为结尾

(2)c#允许在同一个代码行上书写多个语句,但从可读性的角度来看,并不提倡这种做法

(3)c#是一种块结构的编程语言,所有的语句都是代码块的一部分

(4)语句中作为语法成分的标点符号必须是西方标点符号,中文标点符号只能作为字符常量使用

3.注释信息

注释信息是程序中不可执行的部分,仅用于对程序代码加以说明,有助于提高程序的可读性。c#中的注释方法由3种:

(1) 单行注释。在一个语句行上,用双斜杠”//”作为引导符,其后的任何内容均为注释信息,编译时被忽略

(2) 多行注释。从”/*”开始,到”*/”结束,其中的所有内容(可以是一行,或多行)均为注释信息,但注释文字中必须不包含”*/”

(3) XML注释。在一个代码行上,用”///”开始,其后的任何内容均为注释信息,编译时并提取出来,形成一个特殊格式的文本文件(XML),用于创建文档说明书

对于初学者来说,在程序设计中经常使用的是前两种注释方式

1.3c#Windows窗体应用程序设计实例

Windows窗体应用程序通过窗体上的各种图形用户界面(Graphical User Interface,GUI)元素形成与用户交流的界面。

1.3.1c#windows窗体应用程序的创建

在Visual Studio 2008中创建一个c#windows窗体应用程序通常需要以下4个步骤:

(1) 设计用户界面

(2) 设置对象属性

(3) 编写对象事件过程代码

(4) 保存并运行程序

1.3.2c#windows窗体应用程序的结构

窗体应用程序主要由下面几种程序构成:

(1) 导入其他系统预定义元素定义

(2) 命名空间

(3) 类

(4) 方法(主方法,事件响应处理过程)

Program.cs的源代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
namespace motto
{
    static class Program
    {
        ///<summary>
        ///应用程序的主入口点
        ///</summary>
        [STAThread]
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new Form1());
        }
    }
}

本章小结

本章介绍了c#语言的主要特点,并通过两个简单实例介绍了c#控制台应用程序和Windows窗体应用程序的开发过程,以及它们的组成结构,还介绍了c#程序代码的基本书写规则。

习题:

(1) 简述在VS 2017集成环境中创建c#控制台应用程序的主要步骤

(2) 一个c#控制台应用程序主要由哪几个部分构成?

(3) 什么是托管方式?

原文地址:https://www.cnblogs.com/LQ-Hacker/p/csharp-1.html

时间: 2024-10-29 04:49:26

第一课时之c#程序设计概述的相关文章

第一课时《.Net Framwork概述》

MSDN:Net Framwork是为其运行的应用程序提供各种服务的托管执行环境,包括两个主要组件:CLR与,.Net Framwork类库.CLR:作为处理运行的应用程序的执行引擎的公共语言运行时.又叫,公共语言运行库.CLR是.Net Framwork 的核心CLR的核心是CTS和CLS.CTS是通用类型系统(Common Type System)CLS是公共语言定义(Common Language Specification)CLR是公共语言运行时(Common Language Runt

第一章:C语言概述及如何上机运行C程序

第一章:C语言概述及如何上机运行C程序 让编程改变世界 Change the world by program C语言概述 C语言的发展过程 C语言是在 70 年代初问世的.一九七八年由美国电话电报公司(AT&T)贝尔实验室正式发表了C语言.同时由B.W.Kernighan和D.M.Ritchit合著了著名的“THE C PROGRAMMING LANGUAGE”一书.通常简称为<K&R>,也有人称之为<K&R>标准.但是,在<K&R>中

WIN32 API_第一课时、简单WIN32程序的创建

由于之前的学习一直局限于语言基础的部分,而又对有窗体的程序感觉非常有兴趣,当然估计有很多的同学与我有着一样的疑惑,为什么我编写的程序跟我用的程序不太一样,我编写的程序都是一个一个的黑框框,而我平时在电脑上所使用的程序都是有着精美的界面.我便以一个学习者的身份来表达一下我对这些的理解,如有不正之处欢迎指点. 随着学习的深入,也了解到了黑框框和五花八门的窗体之间的关系,知道什么是所谓的GUI(Graphic User Interface).也在随着大多数学习者的脚步接触了MFC框架,同时也了解到还有

杨森翔:春节文化大观上编 第三章 春节古诗词 目录 第一节:春节诗词概述 一、 除夕诗词概述 二、元日诗词概述 三、 元宵诗词概述 第二节:春节古诗词拾萃

杨森翔:春节文化大观上编 第三章 春节古诗词 目录 第一节:春节诗词概述 一. 除夕诗词概述 二.元日诗词概述 三. 元宵诗词概述 第二节:春节古诗词拾萃 一.腊祭诗词 二.祭灶诗词 三.除夕诗词 四.元旦诗词 五.人日诗词 六.元宵诗词 第一节:春节古诗词概述 中国的春节,作为除旧迎新的节日,时间相当长,从年前的腊月二十三,天空中就似乎弥漫了节日的气息.这种节日的气氛,在保持传统风俗较好的地方,甚至会持续到二月二龙抬头的时候,但欢度春节的高潮,应该说是自除夕始一直到上元之夜.因此,历代歌咏和反

java核心技术学习笔记之一程序设计概述

Java 核心技术之一程序设计概述 一.   Java语言的特点 简单行 :取经于C++,排除了C++不常用的指针.结构等,增加垃圾回收. 面向对象:与C++不同是单继承,但是可以继承多接口.完全面向对象的语言: 网络技能:Socket,FTP,Http,URL编程简单: 健壮性:避免指针错误使用: 安全性:构建防病毒防篡改系统: 体系结构中立:字节码: 可移植性: 解释性:可以解释任何移植了的字节码: 高性能: 多线程 动态性: 二.   Internet 和 Java Applet 在网页中

第一章 C/C++语言概述 【代码手输一遍】

前情提要:如果不涉及面向对象的部分,那么C++语言和C语言的语法90%以上是一样的,只不过略有扩充,用起来更为方便而已. 查看gcc版本: E:\Program Files\MinGW\bin>gcc -v Reading specs from ./../lib/gcc/mingw32/3.4.5/specs Configured with: ../gcc-3.4.5-20060117-3/configure --with-gcc --with-gnu-ld --wi th-gnu-as --h

openwrt教程 第一章 物联网&amp;openwrt开发概述

转载请注明出处:http://blog.csdn.net/ns_code/article/details/28505569 序言 求两个正整数的最大公约数是一个很古老且很基本的问题,欧几里得在其著作<几何原本>中给出了高效的解法--辗转相除法,也叫做欧几里得算法.下面我们来看下求最大公约数的一些方法. 方法一 我们先来看欧几里得的辗转相除法.原理很简单,假设用f(x,y)表示x和y的最大公约数,我们令x>y,则有x=ky+b,如果一个数能够同时整除x和y,则必能同时整除b和y,而能够同时

Hadoop -YARN 应用程序设计概述

一概述 应用程序是用户编写的处理数据的统称,它从YARN中申请资源完成自己的计算任务.YARN自身对应用程序类型没有任何限制,它可以是处理短类型任务的MapReduce作业,也可以是部署长时间运行的服务的应用程序.应用程序可以向YARN申请资源完成各类计算任务. 在YARN上开发一个应用程序,通常而言,需要开发两个组件,分别是客户端和ApplicationMaster,其中客户端主要作用是将应用程序提交到YARN上,并与YARN 和Application Master进行交互,查询应用程序的状态

面向对象程序设计概述(金老师第一讲)

EnvironmentSetUp windows的版本(内存和硬盘)+安装断点续传软件( 飞讯,可以暂停后继续下载)+虚拟光驱软件(DAEMON Tools读取下载的.ISO 光盘映像文件) CSharp and DotNet C# 编程语言,作者:Anders Hejlsberg, .NET 微软开发的面向对象的软件开发和运行平台,.NET 的核心技术为.NET Framework =Common Language Runtime (运行环境)+基类库 在Windows Vista 之后,Wi