Files
java-design-patterns/double-dispatch/src/main/java/com/iluwatar/doubledispatch/Meteoroid.java

43 lines
1.1 KiB
Java
Raw Normal View History

package com.iluwatar.doubledispatch;
2015-05-08 20:35:47 +03:00
2015-05-09 19:26:35 +03:00
/**
*
* Meteoroid game object
*
*/
2015-05-08 20:35:47 +03:00
public class Meteoroid extends GameObject {
public Meteoroid(int left, int top, int right, int bottom) {
super(left, top, right, bottom);
}
2015-05-08 21:49:04 +03:00
@Override
public void collision(GameObject gameObject) {
gameObject.collisionResolve(this);
}
2015-05-08 21:49:04 +03:00
@Override
public void collisionResolve(FlamingAsteroid asteroid) {
System.out.println(String.format("%s hits %s.", asteroid.getClass().getSimpleName(), this
.getClass().getSimpleName()));
}
2015-05-08 21:49:04 +03:00
@Override
public void collisionResolve(Meteoroid meteoroid) {
System.out.println(String.format("%s hits %s.", meteoroid.getClass().getSimpleName(), this
.getClass().getSimpleName()));
}
2015-05-08 21:49:04 +03:00
@Override
public void collisionResolve(SpaceStationMir mir) {
System.out.println(String.format("%s hits %s.", mir.getClass().getSimpleName(), this.getClass()
.getSimpleName()));
}
2015-05-08 21:49:04 +03:00
@Override
public void collisionResolve(SpaceStationIss iss) {
System.out.println(String.format("%s hits %s.", iss.getClass().getSimpleName(), this.getClass()
.getSimpleName()));
}
2015-05-08 20:35:47 +03:00
}