abstract define un método y un tipo etiquetado como abstracto, es decir, el tipo base de una clase de tipos que comparten ciertas propiedades, pero el cual no puede instanciarse por tener algunas operaciones primitivas sin implementar.