Dúvida com Fetch

Boa noite pessoal,

tenho uma dúvida quanto ao fetch. Como recuperar uma classe usando um contrutor mais o fetch?. Ex:

from Cat as cat inner join fetch cat.mate left join fetch cat.kittens

Seria possível fazer algo deste tipo:

select new Cat(obj.id) from Cat as cat
    inner join fetch cat.mate
    left join fetch cat.kittens

Se não, como poderia recuperar uma coleçao e um ID somente, sem dar um from na classe.
Valeus