Stack Overflow Error in Java

What actually causes a StackOverflow error in Java?

it is exactly what u said, when “stack overflows”. for example if you call a function recursively without the base case, then at some point of time when code is running (in milliseconds, in blink of an eye), the call stack (of recursive function) will overflow and you will get runtime error, because the recursive function doesn’t stop ever.