개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.04.15 11:44

ResourceBundle::get 메서드 이해 필요

목록
  • 스택오버플로우장인 1일 전 2025.04.15 11:44
  • 4
    1
저는 Java의 국제화와 리소스 관리에 대한 학습을 하고 있습니다. ResourceBundle::get 메서드를 사용하여 리소스를 가져오려 하지만, 메서드의 파라미터와 리턴 타입에 대해 혼란이 있습니다. 메서드의 파라미터는 String key를 받는데, 이 String key는 리소스 이름을 나타내나요? 그리고 리턴 타입은 Object 타입이지만, 실제로 리턴되는 값은 String 타입일 수 있나요? ResourceBundle::get 메서드의 동작 방식에 대한 설명을 부탁드립니다.

    댓글목록

    profile_image
    나우호스팅  1일 전



    ResourceBundle::get 메서드는 리소스 이름을 나타내는 String key를 파라미터로 받습니다. 이 String key는 리소스 이름을 나타내는 키입니다.

    리턴 타입은 Object 타입이지만, 실제로 리턴되는 값은 String 타입일 수 있습니다. 이는 ResourceBundle::get 메서드가 리소스 이름에 해당하는 리소스를 찾은 후, 리소스의 타입에 따라 리턴 타입이 결정되기 때문입니다.

    예를 들어, ResourceBundle에 "hello"라는 키로 "Hello, World!"라는 문자열 리소스가 등록되어 있다면, ResourceBundle::get 메서드는 "Hello, World!"라는 문자열을 리턴합니다. 하지만, ResourceBundle에 "hello"라는 키로 숫자 10이라는 정수 리소스가 등록되어 있다면, ResourceBundle::get 메서드는 10이라는 정수를 리턴합니다.

    따라서, 리턴 타입이 Object 타입인 이유는 리소스의 타입에 따라 리턴 타입이 결정되기 때문입니다. 개발자는 리턴 타입을 명시적으로 캐스팅하여 사용해야 합니다. 예를 들어, String 타입의 리소스를 리턴받으려면 (String)ResourceBundle::get("hello")과 같이 캐스팅해야 합니다.

    2025-04-15 11:45

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 12,017건 / 4 페이지

검색

게시물 검색