子类new的对象调用重写方法,父类中的方法不会被执行
public class DemowenApplication implements Cloneable {
public void ff(){
System.out.println("fulei");
}
public static void main(String[] args) throws UnsupportedEncodingException {
DemowenApplication ff = new Df();
Df gg= new Df();
ff.ff();
gg.ff();
}
}
class Df extends DemowenApplication{
public void ff(){
System.out.println("zilei");
}
}
输出结果:zilei
zilei
在父类没有被重写的方法中调用被重写的方法时,用子类new的对象调用该未被重写的方法时,他里面调用的重写的方法执行的是子类的,父类的不执行
public class DemowenApplication implements Cloneable {
public void ff() {
System.out.println("fulei");
}
public void hh(){
System.out.println("父类没有被重写的");
ff();
}
public static void main(String[] args) throws UnsupportedEncodingException {
DemowenApplication ff = new Df();
Df gg = new Df();
ff.hh();
gg.hh();
}
}
class Df extends DemowenApplication {
public void ff() {
System.out.println("zilei");
}
}
输出结果:父类没有被重写的
zilei
父类没有被重写的
zilei
当子类被其他类1 继承:类1 没有重写 子类 重写父类的方法
public class DemowenApplication implements Cloneable {
public void vv () {
System.out.println("父类");
}
}
class Dv extends DemowenApplication{
public void vv () {
System.out.println("子类");
}
}
class Dh extends Dv{
public static void main(String[] args) throws UnsupportedEncodingException {
DemowenApplication hh = new Dh();
Dv ff = new Dh();
Dh ss = new Dh();
ss.vv();
hh.vv();
ff.vv();
}
}
输出结果:子类
子类
子类
当子类被其他类1 继承:类1 重写 子类 重写父类的方法
public class DemowenApplication implements Cloneable {
public void vv () {
System.out.println("父类");
}
}
class Dv extends DemowenApplication{
public void vv () {
System.out.println("子类");
}
}
class Dh extends Dv{
public void vv () {
System.out.println("类1:DH");
}
public static void main(String[] args) throws UnsupportedEncodingException {
DemowenApplication hh = new Dh();
Dv ff = new Dh();
Dh ss = new Dh();
ss.vv();
hh.vv();
ff.vv();
}
}
输出结果:类1:DH
类1:DH
类1:DH
父类new的对象调用在子类中重写方法,只会执行父类中的方法,不会执行子类中的方法
public class DemowenApplication implements Cloneable {
public void ff(){
System.out.println("fulei");
}
public static void main(String[] args) throws UnsupportedEncodingException {
DemowenApplication ff = new DemowenApplication ();
ff.ff();
}
}
class Df extends DemowenApplication{
public void ff(){
System.out.println("zilei");
}
}
输出结果:fulei
在父类没有被重写的方法中调用被重写的方法时,用父类new的对象调用该未被重写的方法时,他里面调用的重写的方法执行的是父类的,子类的不执行
public class DemowenApplication implements Cloneable {
public void ff() {
System.out.println("fulei");
}
public void hh(){
System.out.println("父类没有被重写的");
ff();
}
public static void main(String[] args) throws UnsupportedEncodingException {
DemowenApplication ff = new DemowenApplication();
ff.hh();
}
}
class Df extends DemowenApplication {
public void ff() {
System.out.println("zilei");
}
}
输出结果:父类没有被重写的
fulei