最经典的c#教材

上传人:第*** 文档编号:51704490 上传时间:2018-08-16 格式:PPT 页数:73 大小:218KB
返回 下载 相关 举报
最经典的c#教材_第1页
第1页 / 共73页
最经典的c#教材_第2页
第2页 / 共73页
最经典的c#教材_第3页
第3页 / 共73页
最经典的c#教材_第4页
第4页 / 共73页
最经典的c#教材_第5页
第5页 / 共73页
点击查看更多>>
资源描述

《最经典的c#教材》由会员分享,可在线阅读,更多相关《最经典的c#教材(73页珍藏版)》请在金锄头文库上搜索。

1、china_ 第3章 面向对象基础编程china_ 第1章 信息与社会 3.1 面向对象基本概念13.2 类及其构成23.3 字段成员33.4 方法成员43.5 属性成员53.6 构造函数63.7 析构函数73.8 索引器成员8china_ 本章学习目标v了解面向对象的基本概念 v理解类的各个成员 v理想面向对象的编程方法 china_ 3.1 面向对象基本概念面向对象(object-Oriented,OO)是软件开发的另一种方法,是将软件 从功能、性质等角度抽象出不同的实体,这些实体分别可以完成各种功能 ,最后将实体组合成最终能够完成一系列任务的一个完整软件。实现封装 和数据隐藏是面向对象设

2、计的关键技术。在面向对象程序设计中,数据以及处理这些数据的操作成为一个整体即对 象,同种类型的对象抽象出其共性就形成类。一个类由方法和属性构成, 方法即函数,属性用来描述类的特性,类中的数据可以用类的方法进行处 理,而对外则只需要提供接口,使对象与对象之间进行通信。这样程序之 间结构更简单清晰,模块更独立,更安全,并且可以继承和重用。实际上 ,面向对象编程就是一项有关对象设计和对象接口定义的技术,或者说是 一项如何定义程序模块才能使它们“即插即用”的技术。china_ 3.1 面向对象基本概念面向对象具有以下特征:1. 抽象性2. 封装性3. 继承性4. 多态性china_ 3.2 类及其构成

3、v3.2.1 类的定义C#中用关键字class来定义一个类,其定义格式为: 属性 修饰符 class 类名 :基类名 /类成员; 说明: 方括号“”内的内容是可选项,可以根据需要添加。 “属性”是对象的特定性质,后面部分再介绍。 “修饰符”指访问修饰符,包含new、public、private、protected、 internal、sealed以及abstract。 类名的首字母一般用大写,与对象相区别。 “:基类名”表示包含一个基类和任何实现的接口的列表,各项之间由逗号 分隔。china_ 3.2 类及其构成v3.2.2 访问修饰符1. new new关键字仅允许在嵌套类声明时使用,表示类

4、中隐藏了由基类中继承而 来的与基类同名的成员。 2. public 表示该类是公有的,对于公共成员的访问没有限制,这是访问的最高级别 。使用public作为访问修饰符优点是使用灵活,缺点是对象成员的值可能 会被破坏。 3. private 用private修饰表示该类为私有类,不允许外界访问,private是允许的最 低访问级别。私有成员只有在声明它们的类和结构体中才是可访问的,在 定义私有成员的类或结构外引用它会导致编译错误。 4. protected 受保护的类,只允许在定义该成员的类和其派生类的内部被调用。用 protected修饰的类对于外界而言不可访问。china_ 3.2 类及其构

5、成v3.2.2 访问修饰符5. internal 内部类,表示只有同一程序集文件中的内部成员才是可访问的。内部访问 通常用于基于组件的开发,因为它使程序集中的组件能够以私有方式进行 合作,在程序集外禁止访问。例如,用于生成图形用户界面的框架可以提 供“控件”类和“窗体”类,这些类通过使用具有内部访问能力的成员进行合 作。由于这些成员是内部的,它们不向正在使用框架的代码公开。 6. protected internal 指protected或 internal,带此修饰符的类成员,不仅是定义该成员的类和 其派生类可以访问,而且所处程序集中的任何类都可以访问。 7. sealed sealed作为

6、修饰符,表示该类为一个密封类,不允许被继承。 8. abstract abstract修饰的类为一个抽象类,抽象类不允许创建实例。china_ 3.2 类及其构成v3.2.2 访问修饰符【示例】类的修饰符 问题描述:在此例中,Employee类包含一个公共成员name和一个私有成 员 salary。公共成员可以直接访问,私有成员则必须通过公共方法 AccessSalary()访问。using System; class Employee public string name = “张三“;double salary = 2000;/默认为私有字段public double Salary() /

7、公共方法 return salary; china_ 3.2 类及其构成v3.2.2 访问修饰符class MainClass public static void Main() Employee employee = new Employee(); /创建对象/访问公共字段string n = employee.name; /访问私有成员double s = employee.Salary(); Console.WriteLine(“n=0,s=1“, n, s); china_ 3.2 类及其构成v3.2.3 创建对象创建类的对象的过程就是类的实例化,C# 用new关键字来初始化一个类的

8、对象。其语法格式如下: 类名 对象名=new 类名();为前面的示例中定义的雇员类创建一个对象employee的语句为: Employee employee=new Employee();china_ 3.2 类及其构成v3.2.4 类的成员类的函数成员主要有以下几种:u方法成员(method)。 u构造函数(constructor)。 u析构函数(destructor)。 u属性成员(property)。 u索引成员(indexer)。 u运算符成员(oprerator)。 u事件成员(event)。china_ 3.2 类及其构成v3.2.4 类的成员1. 类的静态成员 用static关键

9、字修饰的类成员称为类的静态成员。通常那些不会随对象状 态而变化的数据或计算的成员会被定义为类的静态成员。类的变量成员、 方法成员、属性成员、构造函数、事件、运算符等都可以定义为静态成员 。静态成员属于类本身,不管创建了多少个类的实例,它们共享该静态成 员。访问静态成员的格式为: 类名.静态成员名说明: 类的静态成员在第一次被访问之前,并且在任何静态构造函数被调用之前 初始化。 在类的静态成员体中只能访问或引用静态成员。china_ 3.2 类及其构成v3.2.4 类的成员2. 类的非静态成员 不用static关键字修饰的类成员就是类的非静态成员,也叫实例成员。 对创建的每一个类的实例,在内存中

10、都包含了它自己的实例变量的存储空 间,即每个实例都包含了类的所有实例变量的副本。其他实例方法、属性 、构造函数、事件、运算符在类中被各个实例分享。在实例函数成员体中 可以访问任何静态或非静态成员。访问实例成员的格式为: 实例名.实例成员名china_ 3.2 类及其构成【示例】访问引用类型 using System; class Employee public string name ;public double salary ; class MainClass public static void Main()Employee employee1 = new Employee();emplo

11、yee1 .name =“张三“;employee1 .salary = 2000;Employee employee2 = new Employee();employee2 =employee1 ;employee2.salary = 2100;Console.WriteLine(“0的工资为1“, employee1.name, employee1.salary);china_ 3.2 类及其构成v3.2.5 命名空间命名空间就是用namespace关键字声明的一个范围,这个范围用于组织代 码,管理相关的类。使用命名空间可以把类组织成一个逻辑上相关联的层 次结构,对内对外都可以避免命名冲突

12、。命名空间具有以下属性: u组织大型代码项目。 u以“.”运算符分隔。 使用C# 编程时,主要有两种方式来大量使用命名空间。一种是使用.NET Framework 提供的命名空间,另一种是自己定义命名空间。china_ 3.2 类及其构成v3.2.5 命名空间命名空间就是用namespace关键字声明的一个范围,这个范围用于组织代 码,管理相关的类。使用命名空间可以把类组织成一个逻辑上相关联的层 次结构,对内对外都可以避免命名冲突。命名空间具有以下属性: u组织大型代码项目。 u以“.”运算符分隔。 使用C# 编程时,主要有两种方式来大量使用命名空间。一种是使用.NET Framework 提

13、供的命名空间,另一种是自己定义命名空间。1. .NET框架提供的常用命名空间 Microsoft.NET框架由许多命名空间组成,最重要和最常用的是System命 名空间。System命名空间包含基本类和基类,这些类定义常用的值和引 用数据类型、事件和事件处理程序、接口、属性和异常处理,大多数应用 程序都可以通过这些类来与操作系统进行交互。china_ 3.2 类及其构成表3-1 常用的命名空间命名空间说明 System.Collections包含接口和类,定义了各种对象(列表、队列,位 数组、哈希表和字典)的集合 System.ComponentModel包括用于实现属性和类型转换器、绑定到数

14、据源以 及授权组件的基类和接口 System.Data提供对表示 ADO.NET 结构的类的访问 System.Drawing提供对GDI+基本图型功能的访问 System.Web提供使得可以进行浏览器与服务器通信的类和接口 System.Web.UI提供的类和接口可用于创建ASP.NET服务器控件以 及用作ASP.NET Web应用程序用户界面的ASP.NET 网页 System.Web.SessionState提供可将特定于某个单个客户端的数据存储在服务 器上的一个 Web 应用程序中的类和接口 System.Web.UI.HtmlControls提供Web上的html控件,可用编程方式控

15、制web上 的html元素 System.Web.UI.WebControls提供Web上的Web控件china_ 3.2 类及其构成v3.2.5 命名空间2. 自定义义命名空间间 自定义命名空间的语句格式为: namespace 命名空间名 /代码块 命名空间的主体中,既可以包含其他的命名空间,也可以包含一个或多个 类、接口、结构、枚举、委托等元素。【示例】自定义命名空间 namespace MyNamespace class MyClasspublic void myMethod() china_ 3.2 类及其构成v3.2.5 命名空间3. 使用命名空间使用命名空间的语句格式为: using 别名=命名空间名;说明: u是可选项。 u别名是命名空间的别名。有时命名空间较长,使用简短的别名可以提高 编程效率。using 关键字有两个主要用途: u作为指令,用于为命名空间创建别名或导入其他命名空间中定义的 类型。如:using System;/引用System命名空间 u作为语句,用于定义一个范围,在此范围的末尾将释放对象。china_ 3.2 类及其构成

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号