c#重写的好处
从事软件开发已经有2年多了,很少用到重写,但是我理解它,它主要是运用的是OOP三大特性中中集成,重写方法继承父类方法。但是我有点不明白的是用重写和重新写一个方法区别到底在...
从事软件开发已经有2年多了,很少用到重写,但是我理解它,它主要是运用的是OOP三大特性中中集成,重写方法继承父类方法。
但是我有点不明白的是用重写和重新写一个方法区别到底在哪里
因为我也可以定义一个方法,调用父类的方法,然后得到结果以后再进行处理
重写就是直接继承父类方法,得到结果来进行处理
这两个都可以实现相同的方法。
重写到好处到底在哪里?不明白 展开
但是我有点不明白的是用重写和重新写一个方法区别到底在哪里
因为我也可以定义一个方法,调用父类的方法,然后得到结果以后再进行处理
重写就是直接继承父类方法,得到结果来进行处理
这两个都可以实现相同的方法。
重写到好处到底在哪里?不明白 展开
6个回答
展开全部
假如让你写一个类库,包括一个基类(比如说String类),这个基类有一百个子类,每个子类又有一百个子类,然后这里的每一个类都要有copy()方法,怎么办呢?
class String
{……
copy()
……}
接着写他的子类
class String1 based String
{
copy(); //重写父类的方法以实现第一种复制功能
}
class String2 based String
{
copy(); //重写以实现第二种复制功能
}
………………
如此下去,如果每个子类的copy方法你都另取一名去调用父类方法,最后这一万个类还不都混了啊,如果你重写了,那么这一万种copy()就组合成了一个完美的方法,什么都可以复制了。
也就是如果写一两个类,随便你怎么写,那几个方法在脑子里都存的住,可是让你写一万个就不行了。参考重写、重载与多态吧。
class String
{……
copy()
……}
接着写他的子类
class String1 based String
{
copy(); //重写父类的方法以实现第一种复制功能
}
class String2 based String
{
copy(); //重写以实现第二种复制功能
}
………………
如此下去,如果每个子类的copy方法你都另取一名去调用父类方法,最后这一万个类还不都混了啊,如果你重写了,那么这一万种copy()就组合成了一个完美的方法,什么都可以复制了。
也就是如果写一两个类,随便你怎么写,那几个方法在脑子里都存的住,可是让你写一万个就不行了。参考重写、重载与多态吧。
展开全部
重写是继承时子类不满足与父类的方法以重写进行实现和重新写一个方法是不同的,打个比方说有一个父类Fly,有属性 fly,现在定义一个子类Plane可以继承父类的方法,再定义一个子类Bird类,可是我这个子类除了飞属性还要有叫的属性,明显父类就不满足这样的情况了,所以要重写实现
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
C#中override关键字表示重写,对于加上override关键字的属性或函数将完全覆盖基类的同名虚属性或虚函数,使基类的虚属性和虚函数在整个继承链中都不可见(在子类中用base关键字调用除外)
就是自己定义方法的作用
比如object类的tostring()方法,你可以重写让他输出你想要的内容
就是自己定义方法的作用
比如object类的tostring()方法,你可以重写让他输出你想要的内容
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
最重点的地方是能够使用多态对象,这样流程就能共享
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
重写体现多态的特征,代码重用,扩充性更强
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询