>  Q&A  >  본문

java - 인터페이스의 멤버 변수가 상수가 아닌 이유는 무엇입니까?

으아악

인터페이스의 멤버변수는 모두 상수라고 하지 않나요? 케이스에 상수를 요구하는 프롬프트를 사용할 수 없는 이유는 무엇입니까?

phpcn_u1582phpcn_u15822675일 전811

모든 응답(4)나는 대답할 것이다

  • 滿天的星座

    滿天的星座2017-06-23 09:15:11

    인터페이스를 사용할 때에는 반드시 초기값을 상수에 대입해야 합니다. 초기값을 주지 않고 직접 작성하면 잘못된 것입니다.

    회신하다
    0
  • 習慣沉默

    習慣沉默2017-06-23 09:15:11

    스위치의 경우는 컴파일 타임에 값을 결정해야 하며 String.class.getSimpleName()은 런타임에 알려져야 하므로(실제로는 런타임에 상수임에도 불구하고) 컴파일이 통과될 수 없습니다

    회신하다
    0
  • 过去多啦不再A梦

    过去多啦不再A梦2017-06-23 09:15:11

    그렇습니다. 하나는 컴파일 타임에 필요하고, 다른 하나는 런타임입니다(리플렉션 메서드는 모두 런타임입니다). 저번에 잘못 답변했습니다. - Effective Java를 살펴보니 static final로 수정되어 있었습니다. 제안 사항도 있습니다. 상수를 내보내려면 열거형 클래스를 사용하세요.

    회신하다
    0
  • 大家讲道理

    大家讲道理2017-06-23 09:15:11

    不是说接口中的成员变量都是常量吗请问这句话从哪里听来的?
    常量需要使用static final수정, 초기값을 주어야 함

    회신하다
    0
  • 취소회신하다