Salve,
Ho letto questa riga di codice nei Java Tutorials :
codice:
ByteBuffer out = ByteBuffer.wrap(data);
Come può out venire dichiarato se ByteBuffer è una classe astratta e le classi astratte non possono essere istanziate?

ByteBuffer.wrap() ritorna ByteBuffer, ma essendo ByteBuffer una classe astratta, il metodo wrap()
deve ritornare una classe che implementa la classe astratta ByteBuffer. Il metodo wrap() non è astratto, e per cui sicuramente ritorna una classe che implementa ByteBuffer,ma nella javadoc non è menzionata alcuna classe di tale tipo .Ad aumentare la mia confusione nel forum
stackoverflow.com/questions/35317493/java-abstract-class-and-types mi dicono che il metodo wrap() ritorna la classe HeapByteBuffer, ma io questa classe non riesco proprio a trovarla nella javadoc.

In sintesi , che classe ritorna il metodo wrap()?E dunque l'oggetto out di quale classe è istanza?