Te obliga a la de a huevo (forsozamente) a que tengas que hacer(al menos declarar) esos métodos, aunque a simple vista parece inútil, cuando desarrollas para que a posteriori otros programadores lo utilicen, pues resulta mas comodo ver que en la clase abstracta hay un método que yo llamo con ciertos parametro y me regresa esto de tal forma, ya asi no mre preocupa como lo implementaron...
Y bueno, el segundo y mas importante punto, en java no hay polimorfismo, gracias a las clases abstractas se puede realizar por asi decirlo, una emulación del mismo