关于重载与重写

来源:互联网 发布:嗟乎大丈夫当如此也 编辑:程序博客网 时间:2024/06/05 11:26

刚开始写东西,低调,来点简单的

重写与重载

重写

看一段代码

public class Picture {void draw(Object obj) {System.out.println("Super");}}
public class Person extends Picture {public static void main(String[] args) {Object obj = new Object();String ob = new String();Number obn = new Integer(0);//Photo pi = new Photo();Picture pi = new Photo();pi.draw(ob);pi.draw(obn);pi.draw(obj);}}class Photo extends Picture {public void draw(String obj){System.out.println("Sub-s");}public void draw(Number obj){System.out.println("Sub-n");}//public void draw(Object obj){//System.out.println("Sub-o");//}}

OK,看看打印了啥

SuperSuperSuper

更改Class Photo

class Photo extends Picture {public void draw(String obj){System.out.println("Sub-s");}public void draw(Number obj){System.out.println("Sub-n");}public void draw(Object obj){System.out.println("Sub-o");}}

再来看看打印了啥

Sub-oSub-oSub-o

 

重载

更改Class Picture

public class Picture {void draw(Number obj) {System.out.println("Super");}}

Person 对象出错,改改就OK了

上面先放一边

看下面

 

public class Person extends Picture {public static void main(String[] args) {Object obj = new Object();String ob = new String();Number obn = new Integer(0);Float obf = new Float(0.0);Byte obd = new Byte("12");Photo pi = new Photo();//Picture pi = new Photo();pi.draw(obj);pi.draw(obn);pi.draw(obf);pi.draw(obd);}}class Photo extends Picture {public void draw(String obj){System.out.println("Sub-s");}public void draw(Number obj){System.out.println("Sub-n");}public void draw(Float obj){System.out.println("Sub-f");}public void draw(Object obj){System.out.println("Sub-o");}}


看打印

Sub-oSub-nSub-fSub-n

 

OK,结论就不写了


 


 

 




 

0 0
原创粉丝点击