当前位置: 技术问答>java相关
咨询以下:Thinking in java里,覆写(overriding)和重载(overloading)到底有什么区别?!
来源: 互联网 发布时间:2015-10-25
本文导语: 最近在看《Thinking in java》,里面覆写和重载的概念老是分不清楚,好象C++里只有重载,没有什么覆写的概念啊,请大家指导指导! | superclass: A 父类 subclass: B 子类 要在B中更进一步更合...
最近在看《Thinking in java》,里面覆写和重载的概念老是分不清楚,好象C++里只有重载,没有什么覆写的概念啊,请大家指导指导!
|
superclass: A 父类
subclass: B 子类
要在B中更进一步更合适地实现某个方法,一般用override
如
A是 Class 任意边形
method: draw() {}
B是 Class 正方形
method: draw() {}
这时候B就应该重写draw()方法,以便更好实现draw画图这个功能
========
而overloadding 用于不同参数,因为很可能你希望传入不同的type,如
sort(int[] a,int begin, int end)
sort(String[] a, int begin, int end)
这个例子你希望对 int[] 或 String[] 进行排序,而提供两个方法名又无必要,所以使用overload就是最好的方法
subclass: B 子类
要在B中更进一步更合适地实现某个方法,一般用override
如
A是 Class 任意边形
method: draw() {}
B是 Class 正方形
method: draw() {}
这时候B就应该重写draw()方法,以便更好实现draw画图这个功能
========
而overloadding 用于不同参数,因为很可能你希望传入不同的type,如
sort(int[] a,int begin, int end)
sort(String[] a, int begin, int end)
这个例子你希望对 int[] 或 String[] 进行排序,而提供两个方法名又无必要,所以使用overload就是最好的方法
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。