Java 2、重载与重写

Java 2、重载与重写

ID:40748214

大小:36.50 KB

页数:5页

时间:2019-08-07

Java 2、重载与重写_第1页
Java 2、重载与重写_第2页
Java 2、重载与重写_第3页
Java 2、重载与重写_第4页
Java 2、重载与重写_第5页
资源描述:

《Java 2、重载与重写》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、重点题型:重载与重写5/5l总结1、重载:1)参数列表必须不同,个数的不同完全可以,如果个数相同则返回类型可以不同,但它不足以作为唯一的差异。2)只考虑参数列表不同就可以重载;例如a(inta,intb)和a(longa,intb)也算重载;2、重写:1)、覆盖方法的返回类型和参数列表一样必须与它所覆盖的方法相同。2)、覆盖方法不能比它所覆盖的方法访问性差3)、覆盖方法不能比它所覆盖的方法抛出更多的异常。3、构造函数不能被继承4、final防止方法重写;如:staticfinalvoidmethoda()

2、{}大----》小:public、protected、default、private修饰符同类同包子类通用性public[公共]是是是是protected[受保护]是是是default[缺省]是是private[私有]是l58.whichtwodeclaretionspreventtheoverridingofamethod?翻译:那两种声明防止方法重写?A.finalvoidmethoda(){}B.voidfinalmethoda(){}C.staticvoidmethoda(){}D.staticf

3、inalvoidmethoda(){}E.finalabstractvoidmethoda(){}答案:adlpublicclassParent{publicintaddValue(inta,intb){ints;s=a+b;returns;}}classChildextendsParent{重点题型:重载与重写5/5}WhichmethodscanbeaddedintoclassChild?A.intaddValue(inta,intb){//dosomething...}B.publicvoidadd

4、Value(){//dosomething...}C.publicintaddValue(inta){//dosomething...}D.publicintaddValue(inta,intb)throwsMyException{//dosomething...}答案:(bc)题目:哪些方法可以加入类Child中。此题涉及方法重载(overload),方法重写(override)以及类派生时方法重写的规则。方法重载的规则是:一、参数列表必须不同,个数的不同完全可以,如果个数相同则参数类型的不同不能引起歧

5、意,例如int和long,float和double就不能作为唯一的类型不同;二、返回值可以不同,但是不能是重载时唯一的不同点(这点和c++中不同,c++中返回类型必须一致)。方法重写发生在类继承时,子类可以重写一个父类中已有的方法,必须在返回类型和参数列表一样时才能说是重写,否则就是重载,java中方法重写的一个重要而且容易被忽略的规则是重写的方法的访问权限不能比被重写的方法的访问权限低!重写的另一个规则是重写的方法不能比被重写的方法抛弃(throws)更多种类的异常,其抛弃的异常只能少,或者是其子类,不

6、能以抛弃异常的个数来判断种类,而应该是异常类层次结果上的种类。此题中答案a的错误就是重写的访问权限比被重写的方法的低,而b,c都属于重载,d的错误在于比被重写的方法抛弃了更多种类的异常。lwhichmethod,placedatline6,willcauseacompilererror?1)classSuper{2)publicfloatgetNum(){return3.0f;}3)}4)5)publicclassSubextendsSuper{6)7)}whichmethod,placedatline6

7、,willcauseacompilererror?A.publicfloatgetNum(){return4.0f;}//重写B.publicvoidgetNum(){}//带有歧义的重载publicvoidgetNum(){}C.publicvoidgetNum(doubled){}//重载D.publicdoublegetNum(floatd){return4.0d;}//重载答案:BlpublicclassMethodOver{publicvoidsetVar(inta,intb,floatc){}

8、}whichoverloadthesetVar?重点题型:重载与重写5/5A.privatevoidsetVar(inta,floatc,intb){}B.protectedvoidsetVar(inta,intb,floatc){}C.publicintsetVar(inta,floatc,intb){returna;}D.publicintsetVar(inta,floatc){returna;}答案:a,c,d小心A答案

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。