看看下面两种方法:运行bar()显然会导致StackOverflowError,但运行foo()不会(程序似乎无限期地运行)。为什么呢?

什么是StackOverflowError,是什么原因导致的,我应该如何处理它们?