当前位置: 首页 > news >正文

宁夏建设职业技术学院成绩查询网站营口网站制作公司

宁夏建设职业技术学院成绩查询网站,营口网站制作公司,公司简介模板文案,网站首页布局设计原理C# 是一种强类型语言。 每个变量和常量都有一个类型#xff0c;每个求值的表达式也是如此。 每个方法声明都为每个输入参数和返回值指定名称、类型和种类(值、引用或输出)。 .NET 类库定义了内置数值类型和表示各种构造的复杂类型。 其中包括文件系统、网络连接、对象的集合和…C# 是一种强类型语言。 每个变量和常量都有一个类型每个求值的表达式也是如此。 每个方法声明都为每个输入参数和返回值指定名称、类型和种类(值、引用或输出)。 .NET 类库定义了内置数值类型和表示各种构造的复杂类型。 其中包括文件系统、网络连接、对象的集合和数组以及日期。 典型的 C# 程序使用类库中的类型以及对程序问题域的专属概念进行建模的用户定义类型。 类型中可存储的信息包括以下项 类型变量所需的存储空间可以表示的最大值和最小值包含的成员(方法、字段、事件等)继承自的基类型它实现的接口允许执行的运算种类 编译器使用类型信息来确保在代码中执行的所有操作都是类型安全的。 例如如果声明 int 类型的变量那么编译器允许在加法和减法运算中使用此变量。 如果尝试对 bool 类型的变量执行这些相同操作则编译器将生成错误如以下示例所示 int a 5; int b a 2; //OKbool test true;// Error. Operator cannot be applied to operands of type int and bool. int c a test; C 和 C 开发人员请注意在 C# 中bool 不能转换为 int。 编译器将类型信息作为元数据嵌入可执行文件中。 公共语言运行时 (CLR) 在运行时使用元数据以在分配和回收内存时进一步保证类型安全性。 在变量声明中指定类型 当在程序中声明变量或常量时必须指定其类型或使用 var 关键字让编译器推断类型。 以下示例显示了一些使用内置数值类型和复杂用户定义类型的变量声明 // Declaration only: float temperature; string name; MyClass myClass;// Declaration with initializers (four examples): char firstLetter C; var limit 3; int[] source { 0, 1, 2, 3, 4, 5 }; var query from item in sourcewhere item limitselect item; 方法声明指定方法参数的类型和返回值。 以下签名显示了需要 int 作为输入参数并返回字符串的方法 public string GetName(int ID) {if (ID names.Length)return names[ID];elsereturn String.Empty; } private string[] names { Spencer, Sally, Doug }; 声明变量后不能使用新类型重新声明该变量并且不能分配与其声明的类型不兼容的值。 例如不能声明 int 后再向它分配 true 的布尔值。 不过可以将值转换成其他类型。例如在将值分配给新变量或作为方法自变量传递时。 编译器会自动执行不会导致数据丢失的类型转换。 如果类型转换可能会导致数据丢失必须在源代码中进行显式转换。 内置类型 C# 提供了一组标准的内置类型。 这些类型表示整数、浮点值、布尔表达式、文本字符、十进制值和其他数据类型。 还有内置的 string 和 object 类型。 这些类型可供在任何 C# 程序中使用。 自定义类型 可以使用 struct、class、interface、enum 和 record 构造来创建自己的自定义类型。 .NET 类库本身是一组自定义类型以供你在自己的应用程序中使用。 默认情况下类库中最常用的类型在任何 C# 程序中均可用。 其他类型只有在显式添加对定义这些类型的程序集的项目引用时才可用。 编译器引用程序集之后你可以声明在源代码的此程序集中声明的类型的变量和常量。 通用类型系统 对于 .NET 中的类型系统请务必了解以下两个基本要点 它支持继承原则。 类型可以派生自其他类型(称为基类型)。 派生类型继承(有一些限制)基类型的方法、属性和其他成员。 基类型可以继而从某种其他类型派生在这种情况下派生类型继承其继承层次结构中的两种基类型的成员。 所有类型(包括 System.Int32 (C# keyword: int) 等内置数值类型)最终都派生自单个基类型即 System.Object (C# keyword: object)。 这样的统一类型层次结构称为通用类型系统 (CTS)。 若要详细了解 C# 中的继承请参阅继承。 CTS 中的每种类型被定义为值类型或引用类型。 这些类型包括 .NET 类库中的所有自定义类型以及你自己的用户定义类型。 使用 struct 关键字定义的类型是值类型所有内置数值类型都是 structs。 使用 class 或 record 关键字定义的类型是引用类型。 引用类型和值类型遵循不同的编译时规则和运行时行为。 下图展示了 CTS 中值类型和引用类型之间的关系。 类和结构是 .NET 通用类型系统的两种基本构造。 C# 9 添加记录记录是一种类。 每种本质上都是一种数据结构其中封装了同属一个逻辑单元的一组数据和行为。 数据和行为是类、结构或记录的成员。 这些行为包括方法、属性和事件等本文稍后将具体列举。 类、结构或记录声明类似于一张蓝图用于在运行时创建实例或对象。 如果定义名为 Person 的类、结构或记录则 Person 是类型的名称。 如果声明和初始化 Person 类型的变量 p那么 p 就是所谓的 Person 对象或实例。 可以创建同一 Person 类型的多个实例每个实例都可以有不同的属性和字段值。 类是引用类型。 创建类型的对象后向其分配对象的变量仅保留对相应内存的引用。 将对象引用分配给新变量后新变量会引用原始对象。 通过一个变量所做的更改将反映在另一个变量中因为它们引用相同的数据。 结构是值类型。 创建结构时向其分配结构的变量保留结构的实际数据。 将结构分配给新变量时会复制结构。 因此新变量和原始变量包含相同数据的副本(共两个)。 对一个副本所做的更改不会影响另一个副本。 记录类型可以是引用类型 (record class) 或值类型 (record struct)。 一般来说类用于对更复杂的行为建模。 类通常存储计划在创建类对象后进行修改的数据。 结构最适用于小型数据结构。 结构通常存储不打算在创建结构后修改的数据。 记录类型是具有附加编译器合成成员的数据结构。 记录通常存储不打算在创建对象后修改的数据。 值类型 值类型派生自System.ValueType(派生自 System.Object)。 派生自 System.ValueType 的类型在 CLR 中具有特殊行为。 值类型变量直接包含其值。 结构的内存在声明变量的任何上下文中进行内联分配。 对于值类型变量没有单独的堆分配或垃圾回收开销。 可以声明属于值类型的 record struct 类型并包括记录的合成成员。 值类型分为两类struct和enum。 内置的数值类型是结构它们具有可访问的字段和方法 // constant field on type byte. byte b byte.MaxValue; 但可将这些类型视为简单的非聚合类型为其声明并赋值 byte num 0xA; int i 5; char c Z; 值类型已密封。 不能从任何值类型(例如 System.Int32)派生类型。 不能将结构定义为从任何用户定义的类或结构继承因为结构只能从 System.ValueType 继承。 但是一个结构可以实现一个或多个接口。 可将结构类型强制转换为其实现的任何接口类型。 这将导致“装箱”操作以将结构包装在托管堆上的引用类型对象内。 当你将值类型传递给使用 System.Object 或任何接口类型作为输入参数的方法时就会发生装箱操作。  使用 struct 关键字可以创建你自己的自定义值类型。 结构通常用作一小组相关变量的容器如以下示例所示 public struct Coords {public int x, y;public Coords(int p1, int p2){x p1;y p2;} } 另一种值类型是enum。 枚举定义的是一组已命名的整型常量。 例如.NET 类库中的 System.IO.FileMode 枚举包含一组已命名的常量整数用于指定打开文件应采用的方式。 下面的示例展示了具体定义 public enum FileMode {CreateNew 1,Create 2,Open 3,OpenOrCreate 4,Truncate 5,Append 6, } System.IO.FileMode.Create 常量的值为 2。 不过名称对于阅读源代码的人来说更有意义因此最好使用枚举而不是常量数字文本。
http://www.eeditor.cn/news/123043/

相关文章:

  • 三门峡高端网站建设wordpress分类目录伪静态
  • 若要使用链接目标在新窗口打开沈阳网站seo
  • 长春网站优化教程企业信息化建设网站
  • 海贼王路飞和女帝做的网站高端企业网站定制公司
  • 西安的电商平台网站建设深圳网站建设公司怎么做
  • 创意专业网站建设做网站的不给源文件
  • 网站设计和建设自考题百度小程序下载
  • 新风格网站外包网址
  • 简洁的网站建设合同做快餐 承包食堂的公司网站
  • xml文件里做网站超链接wordpress模板教程
  • 网站的布局分类电子商务课程视频
  • 个人网站可以做导航做信息浏览的网站策划案
  • 沭阳网站建设招聘东莞市塘厦镇
  • dede网站栏目管理如何建设上海知名的seo推广咨询
  • 常州外贸公司网站建设企业网站建设板块
  • Wordpress 视频采集插件西安市seo排名按天优化
  • 企业网站广告图片轮播代码免费的库存管理软件有哪些
  • 企业网站建设方案ppt制作网页是什么专业
  • 微信上怎么做网站链接钱宝做任务的网站怎么下
  • 最便宜的低价机票网站建设user pro wordpress
  • 怎么添加网站程序小程序api有哪些
  • 龙岗网站建设icxun做店标 做店招的网站
  • 餐饮网站模板免费下载做网站app需多少钱
  • 查找5个搜索引擎作弊的网站公交建设公司官网
  • 系部网站建设标准17网一起做网店潮汕
  • 游戏开发和网站开发莱芜金点子信息港最新招聘信息
  • 茶叶网站建设哪家企业网站的信息内容包括什么
  • 整站系统安阳论坛安钢贴吧
  • 举报网站建设情况vi设计百科
  • 建立网站时服务器的基本配置有哪些深圳网站设计公司发展历程