Lab 4

Lab Description:

In Lab 4, we are learning how to use interface and how to implement it, and then create a program that will polymorphically process an array to display the result of the interface implementation.

Code:

Movable.java

 public interface Movable {
    public void moveForward();
    public void moveBackward();
    public void stop();
    public void moveLeft();
    public void moveRight();
}

Car.java

//Create By Kawa Tsang
package Lab4;

public class Car implements Movable{

    @Override
    public void moveForward() {
        // TODO Auto-generated method stub
        System.out.println("Car drives forward");
    }

    @Override
    public void moveBackward() {
        // TODO Auto-generated method stub
        System.out.println("Car drives backward");
    }

    @Override
    public void stop() {
        // TODO Auto-generated method stub
        System.out.println("Car parked");
    }

    @Override
    public void moveLeft() {
        // TODO Auto-generated method stub
        System.out.println("Car turns left");
    }

    @Override
    public void moveRight() {
        // TODO Auto-generated method stub
        System.out.println("Car turns right");
    }

}

Plane.java

 //Create By Kawa Tsang

package Lab4;

public class Plane implements Movable{

    @Override
    public void moveForward() {
        // TODO Auto-generated method stub
        System.out.println("Plane flying forward");
    }

    @Override
    public void moveBackward() {
        // TODO Auto-generated method stub
        System.out.println("Plane taxiing backward");
    }

    @Override
    public void stop() {
        // TODO Auto-generated method stub
        System.out.println("Plane landed");
    }

    @Override
    public void moveLeft() {
        // TODO Auto-generated method stub
        System.out.println("Plane flying left");
    }

    @Override
    public void moveRight() {
        // TODO Auto-generated method stub
        System.out.println("Plane flying right");
    }

}

Ship.java

 //Create By Kawa Tsang

package Lab4;

public class Ship implements Movable{

    @Override
    public void moveForward() {
        // TODO Auto-generated method stub
        System.out.println("Ship navigates forward");
    }

    @Override
    public void moveBackward() {
        // TODO Auto-generated method stub
        System.out.println("Ship navigates backward");
    }

    @Override
    public void stop() {
        // TODO Auto-generated method stub
        System.out.println("Ship docked");
    }

    @Override
    public void moveLeft() {
        // TODO Auto-generated method stub
        System.out.println("Ship navigates left");
    }

    @Override
    public void moveRight() {
        // TODO Auto-generated method stub
        System.out.println("Ship navigates right");
    }

}

Clients.java

 //Create By Kawa Tsang

package Lab4;

public class Clients {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Movable[] movableObject = new Movable[3];
        movableObject[0] = new Plane();
        movableObject[1] = new Car();
        movableObject[2] = new Ship();

        for(Movable newMovable: movableObject){
            newMovable.moveForward();
            newMovable.moveBackward();
            newMovable.stop();
            newMovable.moveLeft();
            newMovable.moveRight();
            System.out.println("---------------------");
        }
    }

}

Screenshot:

lab 4

Leave a Reply

Your email address will not be published. Required fields are marked *