다음 코드 실행이 어떻게 되는지 궁금합니다.

package jpastart.reserve.application;
import java.util.Optional;
import javax.persistence.EntityManager;
import jpastart.jpa.EMF;
import jpastart.reserve.model.User;

public class UserService {

    public UserService() {
        // TODO Auto-generated constructor stub
    }

    public Optional<User> getUser(String email){
        EntityManager em = EMF.createEntityManager();
            try{
                    return Optional.ofNullable(em.find(User.class, email));
              }finally{
                    em.close();
            }


    }

}

위 코드에서 중간에 return하는 코드가 존재해도 finally 부분이 실행되나요?

1답변

  • 좋아요

    2

    싫어요
    채택취소하기

    네.

    try 블록 안에 return 문이 실행되더라도 finally 블록은 실행됩니다.

    • (•́ ✖ •̀)
      알 수 없는 사용자

ᕕ( ᐛ )ᕗ
로그인이 필요합니다

작성한 답변에 다른 개발자들이 댓글을 작성하거나 댓글에 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.