An interface is the sketch of your real class
EXAMPLE (4 STEPS)
- You make the interface; WHAT KIND OF CLASS SHOULD I MAKE?
package Interface; public interface InterfaceClass { // constant declarations, if any // method signatures // An enum with values RIGHT, LEFT int turn(String direction, double radius, double startSpeed, double endSpeed); int changeLanes(String direction, double startSpeed, double endSpeed); int signalTurn(String direction, boolean signalOn); int getRadarFront(double distanceToCar, double speedOfCar); int getRadarRear(double distanceToCar, double speedOfCar); // more method signatures }
- You create the main class which EXTENDS the abstract class
package Interface; public class ImplementationClass implements InterfaceClass { }
- add unimplemented methods in REAL class
- RESULT
Interfacepackage Interface; public interface InterfaceClass { // constant declarations, if any // method signatures // An enum with values RIGHT, LEFT int turn(String direction, double radius, double startSpeed, double endSpeed); int changeLanes(String direction, double startSpeed, double endSpeed); int signalTurn(String direction, boolean signalOn); int getRadarFront(double distanceToCar, double speedOfCar); int getRadarRear(double distanceToCar, double speedOfCar); // more method signatures }
IMPLEMENTATION CLASSpackage Interface; public class ImplementationClass implements InterfaceClass { @Override public int turn(String direction, double radius, double startSpeed, double endSpeed) { // TODO Auto-generated method stub return 0; } @Override public int changeLanes(String direction, double startSpeed, double endSpeed) { // TODO Auto-generated method stub return 0; } @Override public int signalTurn(String direction, boolean signalOn) { // TODO Auto-generated method stub return 0; } @Override public int getRadarFront(double distanceToCar, double speedOfCar) { // TODO Auto-generated method stub return 0; } @Override public int getRadarRear(double distanceToCar, double speedOfCar) { // TODO Auto-generated method stub return 0; } }