版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第2章 C#语言基础ASP.NET WebASP.NET Web应用程序设计应用程序设计教程教程第第2章章 C#语言基础语言基础2.1 数据类型与表达式 2.2 程序流程控制 2.3 类 2.4 泛型与集合 2.5 委托与事件2.6 LINQ 2.1 数据类型与表达式2.1.1 数据类型数据类型 数数据据类类型型值类型值类型引用类型引用类型简单类型简单类型结构类型结构类型枚举类型枚举类型类类型类类型接口类型接口类型数组类型数组类型委托类型委托类型2.1.1 数据类型数据类型1. 简单数据类型简单数据类型 n整数类型sbyte,byte,short,ushort,int,uint,long,ul
2、ong,doublen浮点类型float , doublendecimal类型 nBool (true和false) nchar(16位Unicode)2.1.1 数据类型数据类型2. 结构结构 Stuct Rectangle private int x, y; /矩形左上角的坐标 private int width, height; /矩形的宽和高 public Rectangle(int a, int b, int w, int h) x = a; y = b; width = w; height = h; 2.1.1 数据类型数据类型3. 枚举枚举 n基类型默认为整型:基类型默认为整型:
3、n常用形式有:常用形式有:enum days Sun,Mon,Tue,Wed,Thu,Fri, Sat; /第一个成员值默认为0,第二个为1,enum days Mon=1,Tue,Wed,Thu,Fri, Sat, Sun ; enum days mon=1,wed=3,sun,thu=8; n基类型为其他类型:enum num:longMax=2147483648L,Min=255L;long a=(long)Rang.Max;2.1.1 数据类型数据类型4. 数组数组 n一维数组一维数组n数组必须在初始化之后才可以使用。例如:int array=new int3;array0=2;arr
4、ay1=3;array2=4;或int Array=new int32,3,4;int Array=new int 2,3,4;2.1.1 数据类型数据类型n多维数组int, b= new int2,21,2,3,4;n交错数组int c=new intnew int1,2,new int3,4,5;2.1.1 数据类型数据类型5. 字符串字符串 n字符串是使用 string 关键字声明的、由一个或多个字符构成的一组字符。n两种表达方式:用双引号引起来。用引起来。n例如,string FirstName = Jones;string DirName = c:windows; 2.1.1 数据类
5、型数据类型6. 日期与时间日期与时间 n使用DateTime结构创建、表示日期和时间。n使用Now属性获取系统日期。例如,DateTime Birthday = new DateTime(1990,8,14);DateTime today = DateTime.Now; 2.1.2 常量与变量常量与变量 1. 常量常量 const int count = 30;2. 变量变量public static long id = 1027;/静态变量 public int number; /实例变量 var age = “三十”;/隐式变量 var name = 张三; /隐式变量 2.2 程序流程控
6、制程序流程控制 n选择语句switch表达式的类型可以为整型,字符型,string和枚举类型n循环语句foreach(类型 变量名 in 集合) 循环语句; int list=10,20,30; foreach(int m in list) Response.Write(m);2.2 程序流程控制程序流程控制n异常处理try,catch,finallyStreamReader sr=null;try sr=File.Open(“c:test.txt”) catch(DirectoryNotFoundException e) Response.Write(e.Message); finally
7、if(sr!=null) sr.Close();2.3 类 2.3.1 类声明类声明 类修饰符 class 类名 类体public class Person private string _name; private int _age; private long _ID; public Person(string n, int a, long i) _name = n; _age = a; _ID = i; public virtual string Speak() return My Name is + _name + and my age is + _age.ToString(); 2.3
8、.2 类成员 1. 方法方法 n声明方法修饰符 返回类型 方法名(行参列表)方法体n参数值参数引用参数(ref)输出参数(out)参数数组(params)2.3.2 类成员 void Swap(int a , int b ) int t; t = a; a = b; b = t; void Swap(ref int a , ref int b ) int t; t = a; a = b; b = t; int OutValue(int a , out char b) b = (char)a; return 0; int MultiPar(params int var) int sum = 0;
9、 for(int i= 0;ivar.Length;i +) sum += vari; return sum; 2.3.2 类成员2. 字段与属性字段与属性 静态字段(static)实例字段只读字段(readonly)2.3 类 nset和和get访问器访问器 class Window private double m_width = 30; public double widthgetreturn m_width;setm_width = value; 2.3.3 继承 n类修饰符 class 类名 :基类 类体public class Employee : Person private s
10、tring _department; private decimal _salary; public Employee(string n , int a , long i , string d , decimal s) : base(n , a , i ) _department = d;_salary = s; public override string Speak() return base.Speak() + .Salary is + _salary.ToString(); 2.3.4 类的高级特性 1. 抽象类抽象类 abstract class Figure protected d
11、ouble x = 0 , y = 0; public Figure(double a, double b) x =a; y = b; public abstract void Area(); 2.3.4 类的高级特性2. 密封类密封类 sealed class SealedClass public double x = 0 , y = 0; public SealedClass(double a, double b) x =a;y = b; 2.3.4 类的高级特性3. 静态类静态类 static class StaticClass public const int y=100; publi
12、c static void Add(int x) y += x; 2.3.4 类的高级特性4. 分部类分部类 n将类或结构的定义分开放在多个文件中,编译时,由编译器把它们合并在一起形成一个完整类 partial class Person private string _name; private int _age; private long _ID; public Person(string n, int a, long i) _name = n; _age = a; _ID = i; partial class Person public virtual string Speak() ret
13、urn My Name is + _name + and my age is + _age.ToString(); 2.3.4 类的高级特性5. 匿名类型匿名类型 var 匿名对象名 = 对象初始化器; var book = new ISBN = 935-6-887-1568, BookName = ASP.NET Web应用程序设计, Price = 30.5; var title = book.BookName; 2.4 泛型与集合 泛型即通过参数化类型来实现在同一份代码上操作多种数据类型。利用泛型也可以达到代码重用的目的。 1. 泛型类泛型类 修饰符 class 类名 类体 类名 实例名
14、 = new 类名(构造函数的实参); 2.4 泛型与集合 class Stack private T s; int pos; public Stack(int size) s = new Tsize; pos = 0; public void Push(T val) spos = val; pos+; public T Pop() pos-; return spos; Stack s1 = new Stack(2);s1.Push(1);Stack s2 = new Stack(3); 2.4 泛型与集合 2. 泛型方法泛型方法 public int Find(T values,T val)
15、 for(int i=0;ivalues.Length;i+) if(valuesi.Equals(val) return i; return -1; 2.4 泛型与集合 3. 集合集合 nList表示一个动态数组 List al = new List();al.Add(One); al.Add(Two); nDictionary表示一个字典,是一个键/值对的集合 Dictionary ht = new Dictionary();ht.Add(1, one);ht.Add(2, two); 2.5 委托与事件 1. 委托委托n委托属于引用类型,用于封装方法 ndelegate 返回值类型 标识
16、符 (形参列表); public class Sort public delegate bool Compare(int a, int b); public static void BubbleSort(int element, Compare compare) int ElementArray = new int10 23, 3, 58, 23, 90, 45, 12, 78, 25, 67 ; Sort.Compare cp = new Sort.Compare(Ascending);Sort.BubbleSort(ElementArray, cp); 2.5 委托与事件2. 匿名方法匿名
17、方法委托名委托名 实例变量实例变量 = delegate(形参列表形参列表); delegate int AddOne(int v);int y = 10;AddOne ao = delegate(int val) val+; return val;y = ao(y); 2.5 委托与事件3. 事件事件 n修饰符 event 委托类型 事件名; 2.6 LINQ 语言集成查询(Language Integrated Query,LINQ)将标准查询功能集成到高级程序设计语言(如C#、VB.NET)中 1. 基本查询语法基本查询语法 var 查询结果 = from 范围变量 in 数据源 select 范围变量; from子句指定要查询的数据源和范围变量 select子句指定将在执行查询时返回值的类型2.6 LINQ 2. 投影投影 指定元素的子集或对元素的运算结果3. 筛选筛选从数据源中获取满足条件的数据子集。 var AllCourses = from c in courses
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024-2025学年河南新高中创新联盟TOP二十名校高三上学期化学试题及答案
- 财务报表分析 教案 项目三 利润表分析
- 三年级数学(上)计算题专项练习附答案
- 湘版九年级音乐上册教案全集
- 二年级语文上册教学设计
- 《电气控制系统设计与装调》教案 项目六 任务一:中间继电器
- 陕西省咸阳市实验中学2024-2025学年八年级上学期第二次质量检测地理试卷(含答案)
- 发光门牌市场发展预测和趋势分析
- 微笑服务培训
- 女用阳伞产业规划专项研究报告
- 小班数学活动《按颜色分类》课件
- 建材销售挂靠合同协议书模板
- 医疗器械投标流程
- 试卷讲评课-课件
- 高校物业物业管理服务内容及标准
- 有效的员工离职与替补计划
- 售后服务的重要价值
- 2024AIGC视频生成:走向AI创生时代:视频生成的技术演进、范式重塑与商业化路径探索
- 素养本位下的高中数学大单元整体教学设计实践研究
- 温泉设计方案方案
- 四年级美术 《飞天》【全国一等奖】
评论
0/150
提交评论