Principi di Java:

In una classe C ho un metodo del tipo

codice:
public A nomeMetodo(A){...}
ora ho una classe B sottoclasse della Classe A. La questione è: posso invocare il metodo C.nomeMetodo sulla sottoclasse B? Se si, la classe ritornata sarebbe di tipo A, quindi perderei tutte le "caratteristiche" in più che la sottoclasse B ha rispetto alla classe madre A?