问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C#当中对象的方法具有动态性,即有些方法和对象的属性是...

发布网友 发布时间:2022-04-30 18:53

我来回答

1个回答

热心网友 时间:2023-10-09 14:44

C#当中对象的方法具有动态性,即有些方法和对象的属性是...
p是面向对象编程(设计) 面向对象程序设计(英语:Object Oriented Programming,缩写:OOP),指一种程序设计范型,同时也是一种程序开发的方*。它将对象作为程序的基本单元,将程序和数据封装其中,以提高软件的重用性、灵活性和扩展性。基本理论

一项由 Deborah J. Armstrong 进行的长达40年之久的计算机著作调查显示出了一系列面向对象程序设计的基本理论。它们是:



类(Class)定义了一件事物的抽象特点。通常来说,类定义了事物的属性和它可以做到的(它的行为)。举例来说,"狗"这个类会包含狗的一切基础特征,例如它的孕育、毛皮颜色和吠叫的能力。类可以为程序提供模版和结构。一个类的方法和属性被称为"成员"。 我们来看一段伪代码:

类狗 开始 私有成员: 孕育 毛皮颜色 公有成员: 吠叫() 结束

在这串代码中,我们声明了一个类,这个类具有一些狗的基本特征。关于公有成员和私有成员,请参见下面的继承性一节。

对象

对象(Object)是类的实例。例如,"狗"这个类列举狗的特点,从而使这个类定义了世界上所有的狗。而莱丝这个对象则是一条具体的狗,它的属性也是具体的。狗有皮毛颜色,而莱丝的皮毛颜色是棕白色的。因此,莱丝就是狗这个类的一个实例。一个具体对象属性的值被称作它的"状态"。

假设我们已经在上面定义了狗这个类,我们就可以用这个类来定义对象:

定义莱丝是狗 莱丝.毛皮颜色:=棕白色 莱丝.吠叫()

我们无法让狗这个类去吠叫,但是我们可以让对象"莱丝"去吠叫,正如狗可以吠叫,但没有具体的狗就无法吠叫。

方法

方法(Method)是一个类能做的事情,但方法并没有去做这件事。作为一条狗,莱丝是会吠叫的,因此"吠叫()"就是它的一个方法。与此同时,它可能还会有其它方法,例如"坐下()",或者"吃()"。 对一个具体对象的方法进行调用并不影响其它对象,正如所有的狗都会叫,但是你让一条狗叫不代表所有的狗都叫。 如下例:

定义莱丝是狗 定义泰尔是狗 莱丝.吠叫()

则泰尔是不会吠叫的,因为这里的吠叫只是对对象"莱丝"进行的。

消息传递机制

一个对象通过接受消息、处理消息、传出消息或使用其他类的方法来实现一定功能,这叫做消息传递机制(Message Passing)。

继承性

继承性(Inheritance)是指,在某种情况下,一个类会有"子类"。子类比原本的类(称为父类)要更加具体化,例如,"狗"这个类可能会有它的子类"牧羊犬"和"奇瓦瓦犬"。在这种情况下,"莱丝"可能就是牧羊犬的一个实例。子类会继承父类的属性和行为,并且也可包含它们自己的。我们假设"狗"这个类有一个方法叫做"吠叫()"和一个属性叫做"毛皮颜色"。它的子类(前例中的牧羊犬和奇瓦瓦犬)会继承这些成员。这意味着程序员只需要将相同的代码写一次。 在伪代码中我们可以这样写:

类牧羊犬:继承狗 定义莱丝是牧羊犬 莱丝.吠叫() /* 注意这里调用的是狗这个类的吠叫属性。 */

回到前面的例子,"牧羊犬"这个类可以继承"毛皮颜色"这个属性,并指定其为棕白色。而"奇瓦瓦犬"则可以继承"吠叫()"这个方法,并指定它的音调高于平常。子类也可以加入新的成员,例如,"奇瓦瓦犬"这个类可以加入一个方法叫做"颤抖()"。设若用"牧羊犬"这个类定义了一个实例"莱丝",那么莱丝就不会颤抖,因为这个方法是属于奇瓦瓦犬的,而非牧羊犬。事实上,我们可以把继承理解为"是"。例如,莱丝"是"牧羊犬,牧羊犬"是"狗。因此,莱丝既继承了牧羊犬的属性,又......五更分两年年年称心 一夜连两岁岁岁如意 恭贺新春
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
可以用电高压锅做蛋糕吗 蛋糕机选哪家实惠? 京东闪付开通后无法添加到applepay怎么办 二年级数学说课稿范文 苹果手机电充到80就不充了怎么回事 上有八,下有八中间有个十字花打一字 ...排名22000.能否上到广工的机械制造和自动化(卓越工程师班)_百度知 ... 把内存由DDR2升级到DDR3,是不是要设置什么东东啊。 怎样吧DDR2的内存条改成DDR3 ...的内存条是DDR2的,我想换DDR3的可以吗?该怎么换?还有该注意什么... 为什么放大的对象是动态信号,却要晶体管在信号为零时有合适的直流电流和极间电压? 雷神笔记本出现死机的状况该怎样解救? 硒鼓的封条断在里边了,完全看不到封条,打印出来的还有封条的印子,请问如何取出 c++中对象动态建立与静态建立的区别和应用 c++中类对象是动态变量,执行完该对象程序块时,调用析构函数,此时对 硒鼓封条怎么拉出来? js中的内置对象是怎么理解的 ?怎么区分静态对象和动态对象的~~感觉很抽象 很懵懂的样子 打印机的新碳粉盒子旁边的那个抽条拉断了怎么办 1. 面向对象分析模型的五个层次是什么? 2. 对象的五个特点是什么? 3. 为什么说对象是动态的? 书慌了.. 有什么好看的超越的三国的完本的小说么 紧急!在出版的任何文学作品里 有没有一个人为了房子而放弃其他机会(如事业、生活方式)的例子? 求有关周瑜周公瑾的书 强求主角穿越但不得改变剧情的小说 孙策,大乔,小乔,周瑜,孙坚,孙权,曹操,太史慈 有关周瑜的书 推荐几本好书读读呗? 满分求好看的穿越三国的完结小说 求《少年江东》又名《三国少年英雄记》全文txt格式、完整的、 三国少年英雄记的编辑推荐 三国少年英雄记的目录 硒鼓封条拉断了 如何定义一个动态的对象数组? 打印机墨盒封条没撕怎么办?墨盒躲在里面不出来,所有按键的灯都在闪,怎么办呢 C++中为什么要动态创建对象,有什么好处 java 中如何实现 动态声明对象? 什么是动态对象数组?求详解,回答不要太专业,口语化最好,Copy者谢绝回答!谢谢你的帮忙! 我在更换打印机硒鼓时,那个封条需要全抽出来,可我不知道以为没有用,给剪断了,怎么办_百度问一问 c++中用new在堆中创建对象也叫“动态分配对象”吗? 硒鼓一端上这小节塑料(封条)撕断了怎么办? 解决频繁死机的雷神笔记本用什么办法好? SQL里面的没有标准正态分布的累积函数NORMSDIST,有什么办法解决 没有电信手机怎么查询无线网卡是否欠费 乳清蛋白固体饮料主要有什么功效? 农业手机掌上银行在绑定银行卡号的时候,9为什么不没绑定,显示改卡未签约农行短消息服务。怎么办??? 关于农业银行手机客户端的一些问题 手机客户端不能注册登陆,提示该 爱蒙床垫的品质见证 养锦鲤适合用什么材质的滤材过滤? 海口美丽沙岛有什么好玩的? 东北旅游资源的主要特点? 海口市恒大美丽沙属哪个区?