第3章 c#面向对象程序设计

第3章 c#面向对象程序设计

ID:20169959

大小:1.65 MB

页数:82页

时间:2018-10-10

第3章 c#面向对象程序设计_第1页
第3章 c#面向对象程序设计_第2页
第3章 c#面向对象程序设计_第3页
第3章 c#面向对象程序设计_第4页
第3章 c#面向对象程序设计_第5页
资源描述:

《第3章 c#面向对象程序设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、教师:金海溶办公室:QL329第三章C#面向对象程序设计VisualC#.NET程序设计基础教程第3章类面向对象程序设计:从客观世界的对象的属性、状态和行为出发,进行复杂事物管理与问题求解。类:是面向对象程序设计的基本构成模块类的定义:类是具有相同或相似属性和行为的对象的集合,它也是一种数据结构,包含数据成员和函数成员。数据成员类型:常量,字段,事件函数成员类型:方法、属性、索引器、操作符、构造函数和析构函数静态成员★:可以在类的实例之间共享,可以看作是类的全局对象,不需要实例化类即可访问(如int.Parse())p51-54,自学相关理论知识VisualC#

2、.NET程序设计基础教程第3章定义类C#使用class关键字来定义类。其基本结构如下:ClassMyClass{//classmembers}还可以在类定义中指定继承。C#支持类的单一继承,即只能有一个基类,且位于继承列的首项,语法如下:classMyClass:MyBaseClass{//classmembers}定义抽象类(不能实例化的类):publicabstractclassMyClass{……}定义不能被继承的类:publicsealedclassMyClass{……}VisualC#.NET程序设计基础教程第3章4类限制修饰符:public:可以被任

3、意访问;protected:只可以被本类和其派生类(子类)访问;private:只可以被本类所访问。internal:只能在当前程序中被访问,即编译后扩展名为.DLL或.EXE文件中的代码访问。protectedinternal:唯一的一种组合限制修饰符,它只可以被当前程序内所有的类和这些类的派生类所访问。定义类构造函数p57构造函数的函数名必须与类的名字相同,而且是没有任何返回值,用来实例化类的对象classMyClass{publicMyClass(){//构造函数代码}//类的其他成员定义}VisualC#.NET程序设计基础教程第3章析构函数p58类的析

4、构函数是用类名和前缀~来声明的。当释放对象时,就执行析构函数中的代码,释放资源。在调用这个析构函数后,还将隐式地调用基类的析构函数,包括System.Object根类中的Finalize()调用。classMyClass{~MyClass(){//析构函数代码}}VisualC#.NET程序设计基础教程第3章This的引用在方法中,可以使用一个关键词this,来表示这个对象本身。在普通方法中,this表示调用这个方法的对象;在构造方法中,this表示所新创建的对象。VisualC#.NET程序设计基础教程第3章定义类成员成员定义所有成员都有自己的访问级别,用下面

5、的关键字之—来定义:public——成员可以由任何代码访问。private——成员只能由类中的代码访问internal——成员只能由定义它的工程内部的代码访问。proteded——成员只能由类或派生类中的代码访问。VisualC#.NET程序设计基础教程第3章对于class如果没有加修饰符,那么修饰符为internal对于类中的成员如果没有加修饰符,那么修饰符为private对于接口的成员如果没有加修饰符,那么修饰符为public9访问修饰符Teacher类private成员protected成员public成员internal成员Student类只有Stude

6、nt类在Teacher类都在同一程序集中,才可访问internal成员不可访问不可访问可以访问字段和属性p66通过属性和字段可以访问类中的数据,但属性和字段是不同的字段理解为类级别的变量、常量,用于存储该类的实例的相关数据,在定义类时应该设置为私有属性将类中的数据暴露于类外,属性=字段(私有)+1到2个方法(取值方法get和赋值方法set)VisualC#.NET程序设计基础教程第3章属性的定义Public字段类型属性名{get{return字段;}//读取字段set{字段=value;}//设置字段}VisualC#.NET程序设计基础教程第3章字段和属性例子

7、classperson{privatestringname;//定义姓名字段nameprivatestringsex;//定义性别字段sexpublicstringName{//定义姓名属性Nameget{returnname;}set{name=value;}}publicstringSex{//定义性别属性Sexget{returnsex;}set{if(value.Equals("男")

8、

9、value.Equals("女")

10、

11、value.Equals("male")

12、

13、value.Equals("female"))sex=value;elsesex=“未

14、进行正确赋值”;}}}V

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。