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

조회수 876회
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 답변

  • 네.

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

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

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)