初歩的な質問で恐縮です

Monsterクラスを継承したSlimeクラスとGolemクラスを作成したのですが、インスタンス化の際に

Slime slime = new Slime();
Golem golem = new Golem();

とするのではなく、新たにmonsterFactoryクラスを作成し、その中の
メソッドでインスタンス化し、戻り値として該当のインスタンスを返したいと考えています

そういった場合のときにSlimeやGolemといったクラスの数だけメソッドを作成するのではなく、
引数にMonsterクラスの子クラスを指定し、その型のインスタンスを返したいのですが、
そういったメソッドは作成可能でしょうか?
ご教授いただければ幸いです