现在要实现乘坐交通工具到一个景点旅游,距离5000公里。交通工具有飞机、轮船、火车、汽车。
要求实现一个父类Transport,有速度域,有计算时间的方法,参数是里程;其子类有Ship、Plane、Train、Car;子类要重写从父类继承的计算时间的方法。利用类型兼容赋值的形式(也即多态的形式)实现。
代码:
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
while(input.hasNext())
{
String str=input.next();
Transport transport;
int speed=input.nextInt();
char tool=str.charAt(0);
if(tool=='P')
{
transport=new Plane(speed);
transport.Time();
}
else if(tool=='S')
{
transport=new Ship(speed);
transport.Time();
}
else if(tool=='C')
{
transport=new Car(speed);
transport.Time();
}
else if(tool=='T')
{
transport=new Train(speed);
transport.Time();
}
}
}
}
class Transport
{
int speed;
public Transport(int speed)
{
this.speed=speed;
}
public void Time()
{
double time=(double)5000/speed;
System.out.printf("%.2f",time);
System.out.println();
}
}
class Plane extends Transport
{
public Plane(int speed)
{
super(speed);
}
}
class Ship extends Transport
{
public Ship(int speed)
{
super(speed);
}
}
class Car extends Transport
{
public Car(int speed)
{
super(speed);
}
}
class Train extends Transport
{
public Train(int speed)
{
super(speed);
}
}



