- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2.如何定义类和创建对象.doc
《C#程序设计》讲义 第6讲 定义类和创建对象
PAGE 3/ NUMPAGES 3
第6讲 定义类和创建对象
类和对象
表达式和运算符
面向对象的语言:类?对象
类(class)
C#中一种基本的用户定义类型
类是描述事物的蓝图,不能直接使用
类定义的事件的特征:属性、方法、如何访问
对象(object)
由类创建,是类的实例,能够使用
类是一种事物的定义,对象就是事物本身
创建对象的工作由计算机来完成,我们的重点是“如何设计?”
类和对象
用类(class)描述概念
使用类生成对象(Object)
使用具体的对象
在C#中,一切事物都可看成对象。
当创建一个对象时,也就同时创建了一个新类型,称为为引用类型(Reference Type)
值类型与引用类型
值类型
基元类型:整型、浮点型、小数型、布尔型,这些类型与其他语言的基本数据类型相似。
结构型:适用于创建小型对象。
枚举型:除char类型外的其它常数组成的列表类型
引用类型
可能的问题:当多个变量引用同样的内存块时,对任何一个引用变量的修改都会导致该对象的值的改变。
null:引用类型没有对任何实际地址进行引用
字符串、类、数组、接口、委托
值类型的装箱与拆箱
装箱(boxing)
将值类型转换为引用类型,并返回引用的过程
经过装箱的值类型的生存周期超过未装箱实例
装箱的步骤:
在托管堆中为新生成的引用类型对象分配内存(内存大小为值类型大小及2个附加成员)
将值类型实例的字段拷贝到托管堆上新分配对象的内存中
返回托管堆中新分配对象的地址—指向该对象的引用
拆箱(unboxing)
获取指向对象中包含的值类型部分的指针(该指针指向已装箱对象的未装箱部分)
装箱和拆箱并不是严格意义上的互反操作
装箱:分配内存、拷贝字段、返回指针
拆箱:获取指针(不拷贝这字段)
拆箱之后的典型操作往往就是字段拷贝
拆箱操作时,转型结果必须是它原来未装箱的类型!
如何定义类和创建对象
定义类:
[访问修饰符] class 类名称
{
//成员声明
//构造函数
//方法
//……
}
类名的命名规范(Pascal规范):
驼峰法:组成名称的每个单词的首字母大写
例:Person Student WebService JiaoShi
类中公有对象命名约定
除第一个单词外,其余单词首字母大写
例:person student webService jiaoShi
类中私有对象命名约定
所有字母均小写
例: person student webservice jiaoshi
New操作符
CLR要求所有的对象都用 new 操作符创建
例: Employee e = new Employee(“ctorPara”);
new 操作符执行的工作:
从托管堆中分配指定类型所需数量的字节来作为存储其对象的内存空间
初始化对象的2个附件成员
指向类型方法表的指针
SyncBlockIndex,用于线程序同步控制及其他
传入 new 操作符中指定的参数,调用类型的实例构造器
类的成员:
在类中定义的数据称为类的成员。
类的实例为对象,对象中的成员和方法都是对象私有的,即只有对象本身才能够操作。
类成员的访问:对象名.成员名
定义可访问性和作用域
使用访问修饰符,可以定义应用程序中类成员的作用域(可以引用程序元素的代码区域)
声明
定义
public
不限制访问
private
只有包含该成员的类可以访问
internal
只有在同一 assembly 内的类才能访问该
protected
访问限于包含该成员的类或该类的派生类
protected internal
包含的类、派生类或类型所在 assembly 可以访问
关于可访问性的一些规则
命名空间总是默认为 public
类(和结构) 默认声明为 internal (内部的)
类成员默认为 private
对于一个类只能使用一个访问修饰符
Protected internal 是单个访问修饰符
成员的作用域永远不超出包含它的类
推荐做法:只把那些让类使用者看到的元素定义为public
总结
您可能关注的文档
最近下载
- 手术室规章制度33项汇编.pdf VIP
- “互联网+”背景下高校辅导员学业指导与职业规划工作的创新-来源:现代职业教育(高职高专)(第2020040期)-山西教育教辅传媒集团有限责任公司.pdf VIP
- 劳动实践(教案)二年级上册综合实践活动全国通用.docx VIP
- 2024年湖北省华师一附中自主招生数学试题(d含答案).pdf VIP
- 新教科版六上科学1-2《怎样放得更大》练习题(含答案).docx VIP
- 冶金消防安全知识课件.pptx
- 《电力设备典型消防规程》(DL5027—2024).pptx VIP
- 罗马城邦和罗马帝国ppt课件.pptx VIP
- 迅达5400综合系统介绍(2).pdf
- 新教科版六上科学知识点+练习题-1.2《怎样放得更大》.doc VIP
文档评论(0)