자바 프로그래머들은 왜 변수 이름을 "clazz"로 짓는 것을 좋아합니까?
이런 선언이 있는 코드를 많이 봐왔어요Class clazz
어디서부터 시작되었습니까?이건 일종의 관례인가요?나는 'clazz'가 영어단어도 아니고 전혀 의미가 없다고 생각하는데, 어떻게 그렇게 많은 프로그래머들이 우연히 잘못된 이름을 지을 수 있을까?
clazz
JDK 1.0 이후 예약된 단어 "class" 대신 Java에서 사용되었습니다. "class"는 원하는 단어이지만 정크("a", "the", "_" 등)를 생략하거나 삽입하면 명확성이 떨어집니다. clazz
그냥 수업이라고 해."국제" 영어 화자(영어와 미국 영어를 모두 읽는 사람)는 "s"와 "z"를 치환하는 데 익숙합니다.
Java는 처음부터 소스와 적절한 문화를 공개했기 때문에 가치 있는 Java 코드와 튜토리얼은 동일한 규약을 채택하고 있습니다.이것이 자바 생태계의 가장 큰 장점 중 하나입니다.이것이 성공의 중요한 부분이라고 생각합니다.
왜냐하면 그들은 그들이 사용하고 싶은 단어를 사용할 수 없기 때문이다.class
예약되어 있습니다.
단순히 'class'가 예약된 키워드이기 때문에Class class
허용되지 않습니다.그러므로 당신은 보게 될 것이다.Class clazz
또는Class cls
.
이는 실제 컴파일러와 그 컨텍스트 내에서 토큰의 의미를 구별할 수 있는 능력으로 귀결됩니다.단, 이 경우 컴파일러는 토큰을 구별할 수 없습니다.class
는 다른 맥락에서 의미합니다.라는 것은 엄연한 규칙이다class
는, 그 문맥에 관계없이, 클래스의 선언을 나타내기 위해서 사용되고 있기 때문에, 예약어입니다.그것은 가장 간단하고 낮은 수준입니다.
만약 당신이 강요를 느낀다면, 당신이 사용할 수 있도록 허락하는 컨텍스트 규칙을 포함하도록 당신만의 Java 컴파일러를 작성할 수 있습니다.class
변수 이름으로 지정합니다.그냥 시간을 쓰는 게 훨씬 나을 것 같지만clazz
또는klass
건강에도 좋을 것 같아요.
이것은 어디서부터 시작되었습니까?
조쉬 블록의 퍼즐에서 처음 봤어요하지만 다른 개발자들에 의해 훨씬 전에 사용되었다고 확신합니다.Josh Bloch가 더 유명하게 만들었어요.
자바에는 C#과 달리 키워드를 식별자로 사용할 수 있는 기능이 없습니다.@
prefix(예:@class
는 유효한 식별자입니다).
선언.Class clazz
자바 세계에서는 인기가 있지만, 신참이나 철자 검사자에게는 어색할 수 있습니다.나는 가장 놀라지 않는 원칙에 따라 피해야 한다고 말하는 사람들을 들은 적이 있다.
라고 말할 수 있듯이Class
오브젝트는 유형을 나타냅니다.개인적으로는 다음과 같은 변수를 선언하는 것을 선호합니다.Class type
.
Keyword Class Keyword로 대체(Equivalent)된 영어 단어일 뿐이며, 이는 거의 Code의 가독성을 높이기 위한 것이다.
여기에는 큰 로직이 관여하지 않습니다.
clazz를 사용하는 이유는 clazz가 타입 헤더이기 때문입니다.예를 들어, 여기서 클래스를 사용합니다.
public class HelloWorld {
또, 이하와 같이 됩니다.
Object.class.getName();
그래서 아쉽게도 우리는 clazz 같은 대체 이름을 사용해야 한다.
언급URL : https://stackoverflow.com/questions/2529974/why-do-java-programmers-like-to-name-a-variable-clazz
'itsource' 카테고리의 다른 글
vue2-google-module 사용자 지정 스타일 (0) | 2022.08.16 |
---|---|
뷰 Vuex 부품 때 스토어의 변화하지 않습니다. (0) | 2022.08.16 |
Vuex Getter Hook(파라암 포함) (0) | 2022.08.15 |
Vuetify v-tabs v-tab 항목 오버플로 창 너비 (0) | 2022.08.15 |
수집되지 않은 참조 오류:Index.html에 vue 설정을 넣을 때 Vue가 정의되지 않음 (0) | 2022.08.15 |