상세 컨텐츠

본문 제목

[JAVA]표기법 정리

IT/[JAVA]

by TMI1 2025. 5. 16. 09:10

본문

■■■■  표기법 정리 ■■■■
○ 파스칼 표기법(Pascal Notation, Pascal Case)
   파스칼 표기법은 첫 글자를 대문자로 구성하며
   단어가 합성될 때 마다 각 단어의 첫 글자를 대문자로
   표기하는 방식(방법)이다.

ex) class MainTitle  class CircleTest class UserStatus

자바에서는 클래스의 명명 규칙인 첫 글자를 대문자로 한다는 규칙에 
캐멀 표기법이 합쳐진 형태이다.

○ 언더스코어 표기법(Underscore Notation, Underscore Case, 밑줄 표기법)
주로 데이터베이스 파트나 자바스크립트 파트에서 
지역 변수를 사용할 경우에 언더바를 사용하는 
언더스코어 표기법을 사용하기도 한다.

ex) content_name user_data

○ 캐멀 표기법(Camel Notation, Camel Case, 낙타 표기법) 
   캐멀 표기법은 두 단어 이상의 변수명을 표현할 때
   두 번째 단어부터 첫 글자를 대문자로 표기하는 방법이다.

ex) addData rainbowColor userName

변수의 명명 규칙(Naming Rule)인 첫 글자를 소문자로 한다는 규칙과
캐멀 표기법이 합쳐져서 네이밍이 이루어진다.

캐멀 표기법은 자바에서 시작된 것으로
변수명 혹은 클래스명을 작성할 때
단어마다 단어의 첫 글자를 대문자료 표기하는 것이다.
이 표기법은 각 단어의 첫 글자가 대문자로 표기되어
마치 낙타의 등처럼 보인다는 설이 있지만.... 사실과는 다르다.

- 클래스 이름
: 맨 앞 글자를 대문자로 시작한다.
  두 번째로 오는 의미있는 단어의 앞 글자도 대문자이다.

  ex) public class Myclass{} //(o)
      public claas Myclass{} // (x)

- 변수 이름
: 맨 앞 글자를 소문자로 시작한다.
  두 번째로 오는 의미있는 단어의 앞 글자는 대문자이다.

ex) String myName; //(o)
    String MyName;      //(x)

- 메소드 이름
: 맨 앞 글자를 소문자로 한다.
두 번째로 오는 의미있는 단어의 앞 글자는 대문자이다.
(변수 이름과 같은 방법)
단, 메소드의 이름은 가급적 동사로 시작한다.

ex) public String createMyName(){} // (o)
    public String createmymame(){} // (x)
    pulic String myName(){}    // (동사가 아니라 명사이므로 추천하지 않음)

○ 헝가리언 표기법(Hungarian notation,  Hungarian Case)
   헝가리언 표기법은 Microsoft 사의
   charles Simony 라는 프로그래머에 의해 만들어졌다고 한다.
   (당시 헝가리에서 이민 온 개발자)
   그가 코딩할 때 습관적으로 즐겨쓰던 접두사 명명 방식이
   빌 게이츠의 눈에 띄어 일반화된 것이다.

   변수를 표기할 때 앞에 접두어로 쉽게 알아볼 수 있도록 표기하였는데
   이를 통해 자료형을 쉽게 알아볼 수 있다.

ex) int nNum float fNum
    argument of string -> args

Data Type prefix  Example
        -------------------------
        boolean b bContinue
int n nIndex
short n nNum
char c cFirstInitial
String s(str)  sCustomerName(strCustomerName)

*. 실제 자바 프로젝트에서 클래스는 파스칼 표기법으로(+ 캐멀 표기법)
변수나 메소드의 이름은 캐멀 표기법으로 사용하고,
상수화된 변수일 경우(final) 밑줄 표기법으로 사용하며,
간혹 오래된 프로젝트를 유지보수 하다보면
헝가리언 표기법으로 네이밍을 하는 개발자들도 자주 볼 수 있다. 

'IT > [JAVA]' 카테고리의 다른 글

[JAVA]■■■키보드 주요 특수문자 영문이름■■■  (0) 2025.05.16
[JAVA]연산자 그리고 사용  (0) 2025.05.14
[JAVA] 변수와 자료형  (0) 2025.05.14
[JAVA]java와 익숙해지기  (0) 2025.05.14

관련글 더보기

댓글 영역