Java基础之方法重写和多态示例
本文实例讲述了Java基础之方法重写和多态。分享给大家供大家参考,具体如下:
示例代码:
子类的方法与父类的方法具有相同的返回类型和签名,子类方法重写父类方法。
classA{
inti,j;//父类变量
A(inta,intb){//父类构造
i=a;
j=b;
}
voidshow(){//父类方法
System.out.println(i+""+j);
}
}
classBextendsA{//继承父类
intk;//子类变量
B(inta,intb,intc){//子类构造
super(a,b);//调用父类构造
k=c;
}
voidshow(){//子类方法重写父类方法,会隐藏父类方法
System.out.println(i+""+j);
}
voidshow(Stringmsg){//子类方法,重载父类方法(方法签名不同,称为重载)
//super.show();//显示调用父类方法
System.out.println(msg+k);
}
}
classOverride{
publicstaticvoidmain(String[]args){
Bb=newB(1,2,3);
b.show("Thisisk:");
b.show();
}
}
多态:父类对象可以引用子类对象,引用不同对象造成不同结果,称为多态。
classSup{//父类
voidwho(){
System.out.println("Sup");
}
}
classSub1extendsSup{//子类
voidwho(){
System.out.println("Sub1");
}
}
classSub2extendsSup{//子类
voidwho(){
System.out.println("Sub2");
}
}
classDynDispDemo{
publicstaticvoidmain(String[]args){
Supsup=newSup();//父类对象
Sub1sub1=newSub1();//子类对象
Sub2sub2=newSub2();//子类对象
Supsupf;//父类对象
supf=sup;//父类对象引用父类对象
supf.who();//调用父类方法
supf=sub1;//父类对象引用子类对象
supf.who();//调用子类方法
supf=sub2;//父类对象引用子类对象
supf.who();//调用子类方法
}
}
更多java相关内容感兴趣的读者可查看本站专题:《Java面向对象程序设计入门与进阶教程》、《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总》
希望本文所述对大家java程序设计有所帮助。