UUIDs are implementation details of the repository, and I would never reference them from an external system. I would always use paths instead.
Remember David's Model, rule 7 .
To answer your question: A lot of Oak classes use an import of "java.util.UUID", and I've seen several times it being used. That means, I would assume that this class is used to generate UUIDs. But as long as it is not part of the official API of either JCR, Oak or AEM, I would always consider this as an implementation detail. It might work, but it also might break without further notice. In any case I would not depend on it. As said, rather use the path.