Java向上转型

package uii;
/**
 * 定义该类为基础类,即为所有类的父类
 * */
class Cycle {  
private String name = "Cycle";
public void travel(Cycle c) {
System.out.println("Cycle.ride() " + c);//此处自动调用toString方法
}
public String toString() {
return this.name;
}
}
/**
 * 继承父类
 * */
/**
 * Unicycle子类,继承父类Cycle
 * */
class Unicycle extends Cycle {
private String name = "Unicycle";
public String toString() {
return this.name;
}
}
/**
 * Bicycle子类,继承父类Cycle
 * */
class Bicycle extends Cycle {
private String name = "Bicycle";
public String toString() {
return this.name;
}
}
/**
 * Tricycle子类,继承父类Cycle
 * */
class Tricycle extends Cycle {
private String name = "Tricycle";
public String toString() {
return this.name;
}
}
/**
 * 在此处调用各个子类
 * */
public class Biking {
/**
* 所有子类的通用方法
* */
public static void ride(Cycle c) {
c.travel(c);
}
public static void main(String[] args) {
Unicycle u = new Unicycle();
Bicycle b = new Bicycle();
Tricycle t = new Tricycle();
ride(u);//将子类Unicycle转化为父类Cycle
ride(b);
ride(t);
}
}


猜你喜欢

转载自blog.csdn.net/qq_36719861/article/details/79863699
今日推荐