Difference between Optional.get() and Optional.orElseThrow()

In Java 10, Optional.orElseThrow() method without any arguments was added. I don't know what was the reasoning behind this. This method looks exactly the same as Optional.get() and using Optional.get() was considered an anti-pattern in Java 8.

That's how Optional.get() method looks like:

public T get() {
    if (value == null) {
        throw new NoSuchElementException("No value present");
    }
    return value;
}

And that's how Optional.orElseThrow() method looks like:

 public T orElseThrow() {
    if (value == null) {
        throw new NoSuchElementException("No value present");
    }
    return value;
}

As you can see the body is exactly the same. Overloaded version (with Supplier as an argument) of orElseThrow method existed before (what makes sense) but I can't see any point in adding new version of this method (without any arguments). In Javadoc of Optional.get() method we can read this recommendation:

The preferred alternative to this method is orElseThrow()

But again, why? ( ಠ ಠ )