Estoy construyendo un juego pequeño: tijeras de papel de roca.¿Cómo puedo crear un método en JS como un método abstracto en Java?
tengo un prototipo - RPSPlayer
y tengo dos tipos de jugadores: Player1
, Player2
(jugador1 & jugador2 son objetos con un prototipo de RPSPlayer) Cada jugador juega con la función: Player1.play()
.
Cada jugador tiene una estrategia diferente para el juego. Por lo tanto, necesito 2 implementaciones para play()
. Si fuera Java, crearía una clase abstracta RPSPlayer
con un método abstracto play()
y otras 2 clases que heredarían de RPSPlayer
; cada uno de ellos tendría su propia implementación para play()
.
Mi pregunta es: ¿cuál es la forma correcta de hacerlo en JS? Espero haber dejado en claro, gracias a todos.
pero, ¿dónde implemento las dos funciones diferentes de play()? –
@rob: Bueno, o lo asignas a cada jugador después de que creaste la instancia 'player1.play = function() {} ...', o, si 'Player1' y' Player2' son en realidad "clases" heredadas de 'RPSPlayer', defines las funciones en su prototipo. –