C# 构造函数 和 析构函数 的关系是什么? 继承是不是和派生是一个意思?

 我来答
小畅飞飞
2011-09-20 · TA获得超过136个赞
知道答主
回答量:31
采纳率:0%
帮助的人:38.3万
展开全部
构造函数与析构函数是相反的两个函数.
通俗点的说法: 这2个函数是对头.

构造函数是一开始便执行的函数,
而析构函数是当对象过时才执行的函数.

构造函数是 创建对象实例化对象时执行的一个函数.例如 new 时..

而析构函数是当你不需要这个对象时执行的一个函数.释放资源所用.
一般用于非托管资源,C#程序员对于 析构函数是比较陌生的.以前的许多软件经常提示 内存不足,大部分都是因为程序员忘了去释放一些已过时资源.
C#十分人性化的自动释放托管资源.
非托管资源例如: 数据库连接对象.sqlconnection.当使用这种对象时,我们必定会有关闭,释放连接的代码块.

派生和继承其实就是一个说法.
父派生了子.
而子继承了父.
当你把父当成描述主体时, 就应该用派生.例如 父类A 派生了子类 A1
当你把子当成描述主题时, 就应该用继承,例如 子类A1,继承了父类A
suzic
2011-09-20 · TA获得超过510个赞
知道小有建树答主
回答量:242
采纳率:0%
帮助的人:325万
展开全部
一个对象创建时,自动调用的就是它的构造函数,一般发生在new操作的同时。
而这个对象生命终结被垃圾回收释放空间时,就会自动调用它的析构函数。C++中,此操作一般发生在delete时;而C#由于所有的delete操作为系统所掌控,什么时候调用析构函数,我们并不能确知,但必定发生在此对象已经无效以后。

如果对象创建时,需要额外的初始化,或者对象销毁时,需要额外的清理,就需要构造和析构函数,二者是一对相反的操作。

类A作为原型,类B在A的基础上具体化(举个例子就是"人"类是"生物"类的具体化),我们就称B继承了A,或者A派生了B(就是"人"类继承了"生物"类,或者"生物"类派生出"人"类),是指同一件事,只是语法上的主谓不同。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lookingsky829
2011-09-20
知道答主
回答量:61
采纳率:0%
帮助的人:34.1万
展开全部
构造自动生成,也可重载;析构自动生成,都是必须的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式