Se ele tivesse escrito o código corretamente, sem erros de semântica compilaria sim, mas não quer dizer que seria o certo e que funcionaria corretamente.
No caso do polimorfismo é que a classe pode assumir várias formas, polimorfo.
Exemplo:
Eu tenho um classe animal e nela temos o método, vamos chamar de falar. E vamos usar mais 2 classes pra ajudar nosso exemplo, classe cachorro e classe gato.
Cachorro e gato vão herdar todos os atributos e métodos da classe animal porém ao implementá-las o comportamento será diferente. O cachorro ao usar o método falar, vai latir, o gato ao usar o mesmo método vai miar. E você pode criar muitas outras classes, pode ter muitos outros animais e vai reaproveitar código porém na implementação, será da maneira que a classe que está trabalhando pede.
Espero que eu tenha sido claro e tenha ajudado!