社区
C#
帖子详情
C#继承问题
wlpgam
2015-04-16 12:46:14
问题1:
子类会自动拥有父类除了构造方法和析构方法以外的所有成员,,,
这是书上说的,,
那么问题来了,
请问为什么要除了构造方法和析构方法?
---------------------------------------------------------------------------------------------
问题2:
既然如果要重写父类方法时必须加virtual,也就是没有virtual就不能重写,
那么还要sealed来干嘛?
...全文
134
13
打赏
收藏
C#继承问题
问题1: 子类会自动拥有父类除了构造方法和析构方法以外的所有成员,,, 这是书上说的,, 那么问题来了, 请问为什么要除了构造方法和析构方法? --------------------------------------------------------------------------------------------- 问题2: 既然如果要重写父类方法时必须加virtual,也就是没有virtual就不能重写, 那么还要sealed来干嘛?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xuzuning
2015-04-16
打赏
举报
回复
你看的什么书?怎么净胡说八道
xuzuning
2015-04-16
打赏
举报
回复
如果类的构造方法的访问级别是private 那么这个类就不可被 new 实例化 单例模式就是通过声明私有的构造函数实现的
wlpgam
2015-04-16
打赏
举报
回复
谢谢,,分全给你了
圣殿骑士18
2015-04-16
打赏
举报
回复
那如果父类的这个无参构造方法的访问级别是private呢,子类就不能继承了吧,是吗? -- 那当然了,否则protect干什么用呢
圣殿骑士18
2015-04-16
打赏
举报
回复
如果你这些概念都是书上看来的,建议不要看这本书了。 看些经典的书籍就够了
wlpgam
2015-04-16
打赏
举报
回复
这种说法正解,, 那如果父类的这个无参构造方法的访问级别是private呢,子类就不能继承了吧,是吗?
圣殿骑士18
2015-04-16
打赏
举报
回复
问题2: 没virtual可以重写,系统会隐藏父类的方法。
圣殿骑士18
2015-04-16
打赏
举报
回复
你这个书上讲的不准确。 假如你在父类上定义一个无参的构造函数,那么它会被子类直接继承。 如果你在父类定义一个带参数的构造函数,那么它不会被子类继承。 子类调用父类的带参数的构造函数,必须用:base(arg)方式来调用。这就是所谓类的初始化构造器的原理
wlpgam
2015-04-16
打赏
举报
回复
问题1中, 如果加的上private, 不要说构造方法和析构方法,就连其它字段和属性在子类中都无被访问。. 如果加上protected,子类是可以访父类的成员的。 当子类在实例化对象的时候,会先调用父类的构造方法,再调用自身的构造方法, 这与书上说的那句话很矛盾(子类会自动拥有父类除了构造方法和析构方法以外的所有成员) 问题2中, sealed 可以修饰类,表不能被继承,也可以修饰方法,表不可以被重写。 当用new的时候,虽然方法名相同,但子类会执行自己的方法,不管父类的方法,但这不是重写父类方法,是隐藏父类的方法。
娃都会打酱油了
2015-04-16
打赏
举报
回复
第一个如果加上级别是Protected及以上的,可以认为对的 第二个virtual意思就是设计时就预料到子类可以修改,如果没预料到,在某个子类又想重写的话,用new,这时候new 与virtual的区别自行了解(
他们是不一样的
),至于sealed,这是说我这个类是封装类,不允许再继承该类了
本拉灯
2015-04-16
打赏
举报
回复
Liekkas
2015-04-16
打赏
举报
回复
1、假如子类自动拥有父类的构造方法和析构方法,你想想申明对象的时候会出现什么问题 2、sealed表示此类不能被继承,重写跟你这个有什么关系吗,完全是两码事
C#
自定义控件库
C#
自定义控件库
金旭亮《
C#
面向对象程序设计》教案_5:
继承
、接口与多态
金旭亮《
C#
面向对象程序设计》教案_5:
继承
、接口与多态。此教案在前4讲的基础之上讲解初学者者比较难于理解的“多态”特性。包括一个39页的PDF文档及数个VS2010示例。前几讲的教案请访问http://bitfan.download.csdn.net/,更新信息请关注金旭亮博客:http://blog.csdn.net/bitfan
C#
总套教程案例(适合初学者)
C#
总套教程案例(适合初学者) 欢迎学习
c#
全面经典总结
c#
全面经典总结 不错的资源 大家分享一下啊
C#
入门到精通加强版
好不容易才找到的,过来免费分享一下。真心详细,真心易懂
C#
111,125
社区成员
642,540
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章