当前位置: 技术问答>java相关
重载和覆盖的好处
来源: 互联网 发布时间:2017-03-29
本文导语: 虽然它们有相同的名字,但在运行调用时还是准确地调用了相应的 方法,在写程序的时候,也可简单的写一些不同方法名的方法来完成 这些功能,何必要重载和覆盖呢?不知道重载和覆盖有什么好处? | ...
虽然它们有相同的名字,但在运行调用时还是准确地调用了相应的
方法,在写程序的时候,也可简单的写一些不同方法名的方法来完成
这些功能,何必要重载和覆盖呢?不知道重载和覆盖有什么好处?
方法,在写程序的时候,也可简单的写一些不同方法名的方法来完成
这些功能,何必要重载和覆盖呢?不知道重载和覆盖有什么好处?
|
1.他们的名字相同吗?
重载: overload
覆盖:override
2.建议去好好看看多态的部分,你才能真正理解为什么要覆盖和重载
重载: overload
覆盖:override
2.建议去好好看看多态的部分,你才能真正理解为什么要覆盖和重载
|
也许就是那么简单。
|
面向对象的思想一言难进啊!
|
那是因为:利用它们,可以使程序更加简洁,代码更少,
它不仅仅是名字不一样的啊。
相同的名字,其内的内容不一样的啊。
它不仅仅是名字不一样的啊。
相同的名字,其内的内容不一样的啊。
|
面向对象中的方法重载技术,它的好处是同一种运算的方法名都相同,不会因记太多的方法名而导致错误。
|
通过子类对父类方法的覆盖和利用重载在同一个类中定义多个同名的不同方法来实现多态
|
说个重载的例子吧!(我忘了从哪里看到的了,好像是TIJ)
我们再说自然语言的时候只会这么说:
洗衣服,洗牌,洗碗
而不会说:
洗衣服的洗-衣服,洗牌的洗-牌,洗碗的洗-碗
这里的“洗”就是我们在自然语言中作了重载的操作。
这样即省时又省力(还省水:))
意思又明白!
我们再说自然语言的时候只会这么说:
洗衣服,洗牌,洗碗
而不会说:
洗衣服的洗-衣服,洗牌的洗-牌,洗碗的洗-碗
这里的“洗”就是我们在自然语言中作了重载的操作。
这样即省时又省力(还省水:))
意思又明白!
|
class shape{
void draw(){}
}
class line extends shape{
void draw(){...}
}
class circle extends shape{
void draw(){...}
}
这样用起来就方便多了,一般用方法名来表示要处理的事情,处理同一事情还是用相同的名称好。像上面还要drawline(),drawcircle()...
你看看String.valueOf(参数),
难道你要valueOfint(),valueOffloat(),valueOfboolean()来定义吗?
valueOfint(12),vaueOffloat(12.0)...???
void draw(){}
}
class line extends shape{
void draw(){...}
}
class circle extends shape{
void draw(){...}
}
这样用起来就方便多了,一般用方法名来表示要处理的事情,处理同一事情还是用相同的名称好。像上面还要drawline(),drawcircle()...
你看看String.valueOf(参数),
难道你要valueOfint(),valueOffloat(),valueOfboolean()来定义吗?
valueOfint(12),vaueOffloat(12.0)...???
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。