/**
* Title:Cycle.java
* Description:演示多態
*
* @author winwin
* @version 1.0
* @since
*/
public class Cycle {
public void ride(){
System.out.println("ride");
}
}
public class Unicycle extends Cycle {
@Override
public void ride(){
System.out.println("ride unicycle!");
}
}
public class Bicycle extends Cycle {
@Override
public void ride(){
System.out.println("ride bicycle!");
}
}
public class Tricycle extends Cycle {
@Override
public void ride(){
System.out.println("ride tricycle!");
}
}
public class TestRide {
public void rideCycle(Cycle cycle){
cycle.ride();
}
public static void main(String[] args) {
Unicycle uc = new Unicycle();
Bicycle bc = new Bicycle();
Tricycle tc = new Tricycle();
TestRide tr = new TestRide();
//父類引用指向子類對象,rideCycle的參數爲父類引用,uc,bc,tc爲子類對象。
tr.rideCycle(uc);
tr.rideCycle(bc);
tr.rideCycle(tc);
}
} |