版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、面向对象编程C#授课教师:薛海丽.NET Framework 简介.NET Framework类似于JVM.NET Framework 两个主要组件:公共语言运行时 (CLR)统一的类库集.NET的类库:线程文件输入/输出 (I/O)数据库支持XML 解析数据结构Microsoft. NET Framework 的体系结构操作系统公共语言运行时 (CLR)VC+.NetC#VB.NetVJ#.Net Framework 类库 (FCL).NET Framework 的组件基本框架类Web FormsWeb Services WinFormsADO.Net 和 XML 类.Net Framewo
2、rk.Net Framework 类库ASP.NETCLSCLRCTS模拟CLR和MSIL日语汉语翻译英语(中间语言)相似点:计算机编程语言Visual BasicC+代码代码可执行代码运行时环境可执行代码操作系统服务(内存管理和文件 I/O)MSVBVM60.DLLMSVCRT.DLL 编译器为了与一套运行时服务配合工作,.NET Framework 提供了公共语言运行时 (CLR)需要公共运行时环境有了CLR, 保证了.NET 中一种语言具有的功能其他语言也都具有Microsoft中间语言 (MSIL) 由一组特定的指令组成,这些指令指明如何执行代码JIT 编译器的主要工作是将普通 MSI
3、L 代码转换为可以直接由 CPU 执行的计算机代码验证进程可以轻松读取 MSIL 代码CLR和MSIL问题CLR在 .NET Framework 里起到什么样的作用?什么是.net?微软公司前首席执行官的鲍尔默说:“Microsoft.NET 代表了一个集合、一个环境、一个可以作为平台支持下一代Internet的可编程结构。” JAVA和.NET的对比“.NET的开发效率比JAVA要强得多”;“.NET还只是适用于中低端(在国内占绝大多数)应用,如果你现在要做高端的大型的应用系统(比如“巴西全民医疗信息系统”这样的系统),那恐怕还是得选择JAVA”;2003年底,据US Dev Traker的
4、调查数据,2003年第二季度,北美.NET程序员的数量已经超过Java程序员的数量,分别占专业开发者总数的37%和34%。C#是什么? C#是微软公司为了能够完全利用.net平台优势而开发的一种新型编程语言。C#语言从C和C+演变而来,它是给那些愿意牺牲C+一点底层功能,以获得更方便和更产品化的企业开发人员而创造的。C#现代、简单、面向对象和类型安全。尽管它借鉴了C和C+的许多东西,但是在一些诸如名字空间、类、方法和异常处理等特定领域,它们之间还存在着巨大的差异。 C#的优点 简单现代面向对象的类型安全相互兼容性可伸缩性可升级性与Web开发相结合简单C#中指针已经消失. 不安全的操作,比方说直
5、接内存操作不被允许了. 因为它是基于.NET平台的,它继承了自动内存管理和垃圾回收的特点. 整形数值0和1不再作为布尔值出现.C#中的布尔值是纯粹的true和false值。而且没有更多的=操作符和=操作符错误.=被用于进行比较操作而=被用做赋值操作. 现代C#建立在当前的潮流上,对于创建相互兼容的,可伸缩的,健壮的应用程序来说是非常强大和简单的. C#拥有内建的支持来将任何组件转换成一个web service,运行在任何平台上的任何应用程序都可以通过互联网来使用这个服务. 面向对象的C#支持数据封装,继承,多态和对象界面类型安全在C#中我们不能进行不安全的类型转换象将double转换成bool
6、ean. 值类型(常量类型)被初始化为零值而引用类型(对象和类)被编译器自动初始化为零值.数组类型下标从零开始而且进行越界检查. 类型溢出将被检查. 为什么学习C#语言功能强大,是Windows平台上的主要编程语言DOS程序(控制台Console)桌面Windows程序游戏程序(缺点:速度较慢,不适合开发一些高速3D游戏)Web程序:教务管理系统,图书馆查询系统,大三生产实习时就会带领同学们开发一个完整的应用系统服务器端服务程序手机应用程序:智能手机Smart Phone,嵌入式系统开发环境使用非常方便与JAVA开发平台相比,入门比较容易(因为所有的相关产品都是由Microsoft一家公司开发
7、的,集成性非常好)这门课怎么学?除了听课和上机实践外,课下一定要自己多查书、多看示例源代码、多上机实践坚持学习,继续深入学习参考资料电子书MSDNCSDN到图书馆借阅.NET、C#相关的书籍面向对象的概念形成了所有现代编程语言的基础。了解面向对象的概念能够帮助开发者更有效地使用各种现代的编程语言。C# (C-Sharp) 就是一个面向对象的编程语言,它是由Microsoft开发的,用于为应用程序的开发提供简单、现代和多用途的编程语言。本课程适用于想进入面向对象的编程(使用C# 语言)世界的学生们。它在面向对象的编程方法方面提供了坚实的基础,并提供了 C# 编程语言的基本原理。 基本原理在本章中
8、,您将学习:介绍面向对象的方法的特性描述面向对象的方法的阶段在 C# 中定义类声明变量编写和执行 C# 程序 目标面向对象是在对真实系统建模的基础上的一个软件开发方法。面向对象的程序由类和对象组成。让我们了解这些术语类和对象。面向对象的方法Toyota CamrySuzuki RenoHonda Acura对象类面向对象的方法(续)汽车对象从文字上理解为“具体的事情”,人的感观能够感觉到它。对象具有以下特性:对象有状态对象可以显示行为对象有一个唯一的身份对象通过消息进行彼此之间的交互。让我们了解这些概念。面向对象的基础车的位置定义其状态车的运动定义其行为车号 XX 4C 4546显示车的标识面
9、向对象的基础(续)车闪灯来向另一辆车传递消息面向对象的基础(续)课间思考确定以下对象的可能状态:手机立体声播放器答案:手机状态:关机,铃声,振动,通话立体声播放器:播放,暂停,倒带和快进 课间思考Dr. James和 Mr. Hyde 到火车站去定购12月3日的票。在车站,他们向票务人员预订两张头等舱的机票,请确定以下项:这种情况下的消息接收方。接收方可能使用的方法。答案:在这个示例中,消息的接收方是售票柜台的票务员。票务员将检查12月3 日是否有两张头等舱的车票。如果有,他将输入详细信息(姓名、年龄、出发日期和座位号),然后确定此次预订并计算所需的费用。面向对象方法的特性现实建模可重用性轻松
10、更改以不同的形式存在课间思考请指出以下情况是否说明重用性:再生纸抽水机重用性(同一个抽水机可用于井站和油站)答案:不代表重用性,因为纸在被回收利用之前销毁了不可再用的纸。不可再用的纸丢失了其身份并且不能被看作与回收纸完全一样。它表示重用性,因为抽水机可用来抽水以及油。不一定在两个场所使用同一个抽水机。可以使用两台不同的机器,因为它们都属于“抽水机”类。面向对象的方法包括以下阶段:分析阶段设计阶段 实施阶段让我们讨论构建建筑的过程。面向对象方法的阶段课间思考作为DialCom Telecommunications公司的软件开发小组的成员,分配给你一个任务,要求你创建一个能够接受并显示客户详细信息
11、(如姓名、年龄、电话号码)的软件模型。请确定要创建的类和类的方法。答案:根据每个问题说明,所需的类是:Customer类具有的方法是:接受客户详细信息显示客户详细信息程序是执行特定任务的一套指令。编程语言使用程序来开发软件应用程序。编译器就是一个特殊的程序,它专门处理某种特定编程语言编写的语句,并将它们转换成机器语言。此转换的过程称为编译。 介绍 C# C# 也就是C-Sharp,它是由 Microsoft 引入的一种编程语言。C#是专门为使用Microsofts .NET 平台设计的。让我们了解C#编程的构成。 介绍 C# (续)请考虑以下定义类的代码示例:public class Hell
12、opublic static void Main(string args)System.Console.WriteLine(Hello, World! n);C# 中的类public class Hellopublic static void Main(string args)System.Console.WriteLine(Hello, World! n);C# 中的类(续) class 关键字用于声明一个类 public class Hellopublic static void Main(string args)System.Console.WriteLine(Hello, World!
13、 n);C# 中的类(续) 类 名public class Hellopublic static void Main(string args)System.Console.WriteLine(Hello, World! n);C# 中的类(续) Main() 函数是应用程序的进入点 通常用于创建对象和调用成员函数 public class Hellopublic static void Main(string args)System.Console.WriteLine(Hello, World! n);C# 中的类(续) System.Console.WriteLine()方法用于在屏幕上显示
14、文本转义字符显示换行字符。也可显示其它特殊字符,如:t, b and r在记事本中编写 C#程序后,您需要编译并执行该程序以获得所需的结果。编译器将源代码转换成计算机能够识别的机器代码。需要执行以下步骤来编译并执行C# 程序:编译和执行C# 程序1.将记事本中编写的代码保存为扩展名为.cs 的文件。2.要编译代码,需要转至Visual Studio 2005 命令提示符。选择开始所有程序 Visual Studio 2005 Visual Studio 工具 Visual Studio 2005 命令提示符以编译该程序。在 Visual Studio 2005 命令提示符窗口中,转至保存该程序
15、文件的位置。4. 使用以下命令编译该程序文件:csc hello.cs5.要执行该代码,请在命令提示符下输入以下内容:hello.exe编译和执行C# 程序 演示:创建类 问题描述:作为JoyToys 公司的玩具开发小组的成员,分配你一个任务,要求你创建一个能够接受并显示自行车详细信息的自行车模块。声明Bike 类及其成员函数。接受自行车详细信息的成员函数应该显示消息“接受自行车详细信息”。同样,在屏幕上显示自行车详细信息的成员函数应该显示消息“显示自行车详细信息”。变量是内存中的一个位置,它具有名称并且包含值。变量与数据类型相关联,数据类型定义了数据的类型,它可以存储在变量中。声明变量使用以
16、下语法可以声明和初始化变量: =;声明和初始化变量请考虑以下声明和初始化变量的示例:int class_rank=2;声明和初始化变量(续)C#中的数据类型代表要在变量中存储的数据的种类。 C# 提供各种内置的数据类型 ,如:charintfloatdoubleboolstring C#中的数据类型 现在让我们通过一些例子来了解不同的数据类型。NameMarksAge Vowelstringfloatintchar = “Peter”= 83.56= 23 = a考虑以下声明和初始化变量的示例: int class_rank=2;C#中的数据类型 以下数据类型是C#支持的数据类型:值类型 数字
17、 已分配的内存已声明的变量int Num;Num=5; 5 C#中的数据类型(续)值类型中的内存分配考虑以下声明和初始化变量的示例:string Str=“HELLO”;声明和初始化变量C#中的数据类型以下C#支持的数据类型:引用类型string Str=“Hello”; Str 0 1 2 3 4HELLO地址字符串类型变量的内存分配考虑以下声明和初始化变量的示例:int class_rank=2;声明和初始化变量(续)在C#中命名变量以下规则用于在 C# 中命名变量:必须以字母或下划线 开始不应该包括任何嵌入的空格或符号 必须是唯一的 可以有任何数量的字符 关键字不能用作变量名 考虑以下声
18、明和初始化变量的示例:int class_rank=2;声明和初始化变量(续)有效变量名与无效变量名示例Name#ScoreAge2StrankFamily_SizeGender考虑以下声明和初始化变量的示例:int class_rank=2;声明和初始化变量(续)在C#中初始化变量指定要在变量中存储的值。此值可以是一个整数、小数或字符。要了解如何在变量中存储值,请注意以下代码段:int Number;Number=Convert.ToInt32(Console.ReadLine();在成员变量中接受和存储值Console.ReadLine() 用于从用户那里接受输入并且将它存储在Number
19、变量中要了解如何在变量中接受值,请注意以下代码段:int Number;Number=Convert.ToInt32(Console.ReadLine();在成员变量中接受和存储值(续)Convert.ToInt32() 将用户输入的数据转换成 int 数据类型 1输入Console.Read()Console.ReadLine() 这两种方法都用于从键盘读取信息,存入某个变量中,所不同的是: Console.ReadLine()方法用于读取一行字符,并将获得的数据保存在字符串变量中。Console.Read()方法用于获得用户输入的任何一个字符(可以是任何的字母或数字)的ASCII值。 2输
20、出Console.Write()Console.WriteLine() 这两种方法都用于向屏幕输出结果,它们可用于所有的数据类型,所不同的是:Console.WriteLine()方法先输出信息后换行,而Console.Write()方法不换行输出信息。 格式输出用0,1表示第二个参数和第三个参数值 Console.WriteLine(arr0=1,i,arri);int number = 9;Console.WriteLine(the number is 0, number);让我们来学习如何来编写、编译和执行C#程序。编写和执行 C# 程序可以使用如记事本这样的编译器来编写C# 程序。请注
21、意以下代码,它声明了Car 类并为它创建了对象 MyCar:using System;class Car/Member variablesstring Engine;int NoOfWheels;/Member functions void AcceptDetails()创建一个样本 C# 程序using 关键字用于在程序中包括名称空间。注释用于解释代码并由符号/显示。成员变量用于存储数据。成员函数在执行某个特定任务的类中声明。Console.WriteLine(Enter the Engine Model);Engine = Console.ReadLine();Console.WriteL
22、ine(Enter the number of Wheels);NoOfWheels = Convert.ToInt32(Console.ReadLine();创建一个样本 C# 程序(续)public void DisplayDetails()Console.WriteLine(The Engine Model is:0, Engine);Console.WriteLine(The number of wheels are:0, NoOfWheels);创建一个样本 C# 程序(续)/Class used to instantiate the Car classclass ExecuteClasspublic static void Main(string args)Car MyCar = new Car();MyCar.AcceptDetails();MyCar.DisplayDetails();创建一个
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 帆船课堂课件
- 妇产科应急演练课件
- 妇产科产程护理课件
- 9-9-Bicarbazole-3-3-6-6-tetracarboxylic-acid-9-9-Bicarbazole-3-3-6-6-tetracarboxylic-acid-生命科学试剂-MCE
- 风车教案课件
- 粉尘防爆安全课件
- 防触电急救课件
- 分包资质资料介绍课件
- 2026-2031年中国公募基金行业市场调查研究及发展前景预测报告
- 2021-2025高考真题汇编 专题1 先秦时期含答案解析
- 自学中草药测试题及答案
- 林业职称考试题库及答案
- JJG 694-2025原子吸收分光光度计检定规程
- T-CIATCM 013-2019 中医电子病历基本数据集
- 玻璃采光顶工程施工交底范本
- 康复治疗技术专业教学标准(高等职业教育专科)2025修订
- 村级山坪塘管理制度
- 2025循环流化床锅炉停(备)用维护保养导则
- GB/T 30134-2025冷库管理规范
- 中职数学集合说课
- 湖北省孝感市孝南区2024-2025学年七年级上学期期中地理试题(含答案)
评论
0/150
提交评论