今天看到有技术群里议论这个问题,虽然很少用但是也是一个知识点,在此做一个小记录 1.先附上两张结果图 (1)finally中不包含return的情况 (2)finally中包含return语句的情况 2.解释说明:因为第一个finally里面没有return,所以他对return改变不了,try里面的return会暂存下来,有个缓存区,finally只是改变了i的值没有改变到return缓存区的值而第二张图中finally里面有return语句所以改变了return缓存区的信息。 3.操作对象的结果