Java 수정 자의 합리적인 순서는 무엇입니까?
- 요약
- 결정적인
- 원주민
- 은밀한
- 보호
- 공공의
- 공전
- strictfp
- 동기화 됨
- 과도 현상
- 휘발성 물질
최신 정보
에서 나는 표현을 변경 한 추천 에 합리적인 순서가 권장 여부 논의를 진정시키기 위해.
답변
관습 수식의 사용 순서는에서 언급 Java 언어 사양 (그리고 자바 가상 머신 사양) 예에 대한 클래스 수정 다음과 같은 정의 (추출물)를 찾을 수 있습니다 :
ClassModifiers: ClassModifier ClassModifiers ClassModifier ClassModifier: one of Annotation public protected private abstract static final strictfp
[….]
클래스 선언에 둘 이상의 (고유 한) 클래스 수정자가 나타나면 필수는 아니지만 ClassModifier 프로덕션에서 위에 표시된 순서와 일치하는 순서로 나타나는 것이 일반적입니다. (단락 하단에 작은 텍스트!)
당신은 예 수정의 사용이 지정되어 여러 다른 장소에서이 문장을 찾을 여기 필드 수정을 위해.
업데이트 : “지정 / 권장”을 “관습”으로 대체하여이 답변을 수용 할 수 있도록했습니다. 당신은 코멘트를 읽으면 (덕분에이 명확를 만들기 위해 @EJP) ;-)이 점을 고려 – 그럼에도 불구하고 나는 것이 권장 사용에 관례 순서를.
Google은 또한 Java 사양에 언급 된 관례적인 순서를 사용하는 것이 좋습니다 .
public / protected / private
abstract
static
final
transient
volatile
synchronized
native
strictfp
업데이트 :OpenJDK 커뮤니티의 프로젝트를위한새로운 “ Java Style Guidelines “이니셔티브가 있습니다. 또한 수정 자 순서에 대한 권장 사항이 있으며Java 8의 새로운 기본 수정자를포함합니다.
public / private / protected
abstract
static
final
transient
volatile
**default**
synchronized
native
strictfp
답변
Java Virtual Machine 사양, 표 4.4 에 따라 주문을 사용하는 것이 합리적입니다.
- 공공의
- 보호
- 은밀한
- 요약
- 기본
- 공전
- 결정적인
- 과도 현상
- 휘발성 물질
- 동기화 됨
- 원주민
- strictfp
답변
int 값을 기반으로합니다.
- 1 : 공개
- 2 : 개인
- 4 : 보호됨
- 8 : 정적
- 16 : 최종
- 32 : 동기화 됨
- 64 : 휘발성
- 128 : 과도
- 256 : 네이티브
512 : 인터페이스- 1024 : 초록
- 2048 : strictfp
답변
두 가지 규칙을 사용하여 수정 자 시퀀스를 기억하지만 strictfp는 포함하지 않습니다. 참고로.
-
동기화 된 네이티브는 우선 순위가 가장 낮은 사람들입니다.
-
PPP AS FTV : PPP {노이즈 사운드} AS {시청} FTV {프랑스 TV}.
🙂