所认识的C#

本文详细介绍了C#编程语言的基础,包括它为公共语言基础结构(CLI)设计、面向对象特性如类、对象、继承、封装和多态。C#中的变量类型、数组、结构和类的概念被阐述,同时提到了方法、循环控制和异常处理。此外,还讨论了C#中的常量、初始化、引用类型与值类型的区别,以及指针、递归和访问修饰符的使用。文章强调了C#在变量初始化、数组操作、结构与类的差异以及继承机制等方面的关键点。
摘要由CSDN通过智能技术生成

C# 是专为公共语言基础结构(CLI)设计的。CLI由可执行代码和运行时环境组成,允许在不同的计算机平台和体系结构上使用各种高级语言。C#是一种面向对象的编程语言。在面向对象的程序设计方法中,程序由各种相互交互的对象组成。相同种类的对象通常具有相同的类型,或者说,是在相同的class中。例如,以Rectangle对象为例。它具有length和width属性。根据设计,它可能需要接受这些属性值、计算面积和显示细节。而成员函数是指一系列执行指定任务的语句,类的成员函数是在类内声明的。变量可以分为几个类型:值类型、引用类型、值针类型。值类型的变量可以直接分配给一个值它们是从类System.ValueType中派生的。引用类型则是不包含存储在变量中的实际数据,但它们包含对变量的引用。换句话说,它们指的是一个内存位置。使用多个变量时,引用类型可以指向一个内存位置。如果内存位置的数据是由一个变量改变的,其他变量会自动反映这种值的变化。指针类型变量存储另一种类型的内存地址。C#中的指针与C或C++中的指针有相同的功能一个变量只不过是一个供程序操作的存储区的名字。在 C#中,每个变量都有一个特定的类型,类型决定了变量的内存大小和布局。范围内的值可以存储在内存中,可以对变量进行一系列操作。C#允许定义其他值类型的变量,比如enum,也允许定义引用类型变量,比如class。这些我们将在以后的章节中进行讨论。在本章节中,我们只研究基本变量类型。C#中的变量通过在等号后跟一个常量表达式进行初始化(赋值)。常量是固定值,程序执行期间不会改变。常量可以是任何基本数据类型,比如整数常量、浮点常量、字符常量或者字符串常量,还有枚举常量。常量可以被挡住常规的的变量,只是他们的值在定义后不能被修改。

数组是一个存储相同类型元素的固定大小的顺序集合。数组是用来存储数据的集合,通常认为数组是一个同一类型变量的集合。所有的数组都是由连续的内存位置组成的。最低的地址对应第一个元素,最高的地址对应最后一个元素。声明一个数组不会在内存中初始化数组。当初始化数组变量时,您可以赋值给数组。元素是通过带索引的数组名称来访问的。这是通过把元素的索引放置在数组名称后的方括号中来实现的。在C#中,结构是值类型数据结构。它使得一个单一变量可以存储各种数据类型的相关数据。struct 关键字用于创建结构。在C#中的结构与传统的C或C++中的结构不同。C#中的结构有一下特点:结构可带有方法、字段、索引、属性、运算符方法和事件结构可定义构造函数,但不能定义析构函数。但是,您不能为结构定义默认的构造函数。默认的构造函数是自动定义的,且不能被改变与类不同,结构不能继承其他的结构或类结构不能作为其他结构或类的基础结构当您使用 New 操作符创建一个结构对象时,会调用适当的构造函数来创建结构。与类不同,结构可以不使用 New 操作符即可被实例化。类的定义是以关键字 class 开始,后跟类的名称。类的主体,包含在一对花括号内。类的成员函数是一个在类定义中有它的定义或原型的函数,就像其他变量一样。作为类的一个成为,它能在类的任何对象上操作,且能访问该对象的类的所有成员。成员变量是对象的属性(从设计角度),且它们保持私有来实现封装。这些变量只能使用公共成员函数来访问。C#继承是面向对象程序设计中最重要的概念之一。继承允许我们根据一个类来定义另一个类来定义一个类,这使得创建和维护应用程序变得更容易。当创建一个类时,程序员不需要完全重新编写新的数据成员和成员函数,只需要设计一个新的类,继承了已有的类的成员即可。这个已有的类被称为的基类,这个新的类被称为派生类。一个类可以派生自多个类或接口,这意味着它可以从多个基类或接口继承数据和函数。

一般情况下,语句是顺序执行的:函数中的第一个语句先执行,接着是第二个语句,依此类推。编程语言提供了允许更为复杂的执行路径的多种控制结构。循环控制语句更改执行的正常序列。当执行离开一个范围时,所有在该范围中创建的自动对象都会被销毁。如果条件永远不为假,则循环将变成无限循环。for循环在传统意义上可用于实现无限循环。封装被定义为"把一个或多个项目封闭在一个物理的或者逻辑的包中"在面向对象程序设计方法论中,封装是为了防止对实现细节的访问。封装是使用访问修饰符来实现的:Public 访问修饰符允许一个类将其成员变量和成员函数暴露给其他的函数和对象。任何公有成员可以被外部的类访问。Private 访问修饰符允许一个类将其成员变量和成员函数对其他的函数和对象进行隐藏。Protected 访问修饰符允许子类访问它的基类的成员变量和成员函数。这样有助于实现继承等等的访问修饰符。一个方法是把一些相关的语句组织在一起,用来执行一个任务的语句块。每一个C#程序至少有一个带有Main方法的类。一个方法可以自我调用。这就是所谓的递归。当调用带有参数的方法时,您需要向方法传递参数。这是参数传递的默认方式。在这种方式下,当调用一个方法时,会为每个值参数创建一个新的存储位置。引用参数是一个对变量的内存位置的引用。当按引用传递参数时,与值参数不同的是,它不会为这些参数创建一个新的存储位置。引用参数表示与提供给方法的实际参数具有相同的内存位置。C#提供了一个特殊的数据类型,nullable 类型(可空类型),可空类型可以表示其基础值类型正常范围内的值,再加上一个null值。在处理数据库和其他包含可能未赋值的元素的数据类型时,将null赋值给数值类型或布尔型的功能特别有用。Null合并运算符用于定义可空类型和引用类型的默认值。Null合并运算符为类型转换定义了一个预设值,以防可空类型的值为Null。Null合并运算符把操作数类型隐式转换为另一个可空(或不可空)的值类型的操作数的类型。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值