某交通枢纽中心有15种交通工具,
其中3辆汽车、5架飞机、7艘轮船。
每种交通工具都可以前进,
汽车在陆地上前进、
飞机在空中前进、
轮船在水里前进。
利用面向对象程序设计的多态性,
设计一程序让所有交通工具都前进一次。----------寻求编程-----------------------------
 《希望也可以提供以上题目相类似的题目。》

解决方案 »

  1.   

    大致可以定义个抽象类,里面有个前进的抽象方法
    三个类(Car,Ship,Airplane)继承抽象类实现不同的前进方法
    main中实例化,调用即可
      

  2.   

    大致可以定义个抽象类,比如TafficTools public abstract class TafficTools {
    int moveStep=0;
    public void move(){
    moveStep++;
    }
    public int getMove(){
    return moveStep;
    }
    }里面有个前进的抽象方法三个类(Car,Ship,Airplane)继承抽象类实现不同的前进方法
    main中实例化,调用即可
      

  3.   

    本实例主要实现定义一个动物类Animal及它的子类Bird,具体步骤如下。(1)创建一个名称为Animal的类,在该类中声明一个成员方法cry(),具体代码如下:
    public class Animal {    public Animal(){    }    public void cry(){        System.out.println("动物发出叫声!");    }}(2)创建一个Animal类的子类Dog类,在该类中覆盖了父类的成员方法cry(),具体代码如下:
    public class Dog extends Animal {    public Dog(){    }    public void cry(){        System.out.println("狗发出"汪汪……"声!");    }}(3)创建一个Animal类的子类Cat类,在该类中覆盖了父类的成员方法cry(),具体代码如下:
    public class Cat extends Animal{    public Cat(){    }    public void cry(){        System.out.println("猫发出"喵喵……"声!");    }}(4)创建一个Animal类的子类Cattle类,在该类中不定义任何方法,具体代码如下:
    public class Cattle extends Animal {}(5)创建一个名称为Zoo的类,在该类的main()方法中创建子类Bird的对象并为该对象分配内存,然后对象调用该类的成员方法,具体代码如下:
    public class Zoo {    public static void main(String[] args) {        Dog dog=new Dog();                    //创建Dog类的对象并为其分配内存        System.out.println("执行dog.cry();语句时的输出结果:");        dog.cry();        Cat cat=new Cat();                      //创建Cat类的对象并为其分配内存        System.out.println("执行cat.cry();语句时的输出结果:");        cat.cry();        Cattle cattle=new Cattle();                //创建Cattle类的对象并为其分配内存        System.out.println("执行cattle.cry();语句时的输出结果:");        cattle.cry();            }}(6)运行本实例,其运行结果如下:执行dog.cry();语句时的输出结果:狗发出“汪汪……”声!执行cat.cry();语句时的输出结果:猫发出“喵喵……”声!执行cattle.cry();语句时的输出结果:动物发出叫声!********************************
      

  4.   

    public interface vehicle {
    public void go();
    }public class car implements vehicle{
    public void go() {
    System.out.println("earth");
    }}
    public class ship implements vehicle{ public void go() {
    System.out.println("ocean");
    }}
    public class airplane implements vehicle{ public void go() {
    System.out.println("sky");

    }}import java.util.ArrayList;public class run {

    private ArrayList<vehicle> vehicleList = new ArrayList<vehicle>();
    public void add(vehicle vc){
    vehicleList.add(vc);
    }

    public void go(){
    for(int i = 0; i < vehicleList.size(); i++){
    vehicleList.get(i).go();
    }
    }

    public void remove(vehicle vc){
    vehicleList.remove(vc);
    }

    public static void main(String [] lsg){
    car c1 = new car();
    car c2 = new car();
    car c3 = new car();
    airplane a1 = new airplane();
    airplane a2 = new airplane();
    airplane a3 = new airplane();
    airplane a4 = new airplane();
    airplane a5 = new airplane();
    ship s1 = new ship();
    ship s2 = new ship();
    ship s3 = new ship();
    ship s4 = new ship();
    ship s5 = new ship();
    ship s6 = new ship();
    ship s7 = new ship();
    run r = new run();
    r.add(c1);
    r.add(c2);
    r.add(c3);
    r.add(a1);
    r.add(a2);
    r.add(a3);
    r.add(a4);
    r.add(a5);
    r.add(s1);
    r.add(s2);
    r.add(s3);
    r.add(s4);
    r.add(s5);
    r.add(s6);
    r.add(s7);
    r.go();
    }
    }
      

  5.   

    使用interface吧。复用比较灵活。