클래스의 작성
Java
(1) 패키지 선언문
(2) import
(3) class 정의
(4) 멤버 변수
(5) 멤버 메서드
(6) 생성자
(7) 이너 클래스
(8) 초기화자
(1) 패키지 선언문
package top.sub.---;
- 0개 또는 1개 존재(한 클래스는 여러 패키지에 속할 수 없음)
- 유일한 패키지명을 위해 보통 domain 이름의 역순으로 패키지를 설정
- 폴더, 네임스페이스 개념
(2) import
import top.sub.class명;
또는 import top.sub.*;
- 0개 또는 다수개 존재
- 현 클래스에서 참조하는 클래스가 자신과 같은 패키지가 아닌 경우 명시(단,
java.lan
패키지는 자동으로 import됨) 클래스명.멤버
형태로 사용*
의 경우 모든 클래스와 인터페이스를 import함
(3) class 정의
* ’[ ]‘의 경우 생략 가능함
[접근지정자] [활용지정자] class 클래스명 [extends 부모클래스명] [implements 부모인터페이스명]
- 1개 또는 다수개 존재
- 접근지정자 :
default
,public
만 올 수 있음 - 활용지정자 : final, static 등
- 클래스 이름 명명규칙 : 명사형 + 대문자형 첫글자 + 복합어일 경우 첫글자 대문자(카멜 케이스)
- extends : 자바의 경우 단일 상속만 지원하므로 0개 또는 1개만 존재
- implements : 인터페이스는 다중 상속 가능하므로 0개 또는 다수개 존재
(4) 멤버 변수
[접근지정자] [활용지정자] dataType 변수명 [=초기값];
- 접근지정자 :
private
,default
,protected
,public
모두 가능 - 활용지정자 : final, static, transient 등
- 변수 이름 명명규칙 : 명사형 + 소문자형 첫글자 + 복합어일 경우 첫글자 대문자
- 초기값 : 생략 시 기본값 자동 초기화
(5) 멤버 메서드
[접근지정자] [활용지정자] returnType 메서드명 ([dataType 매개변수, ---]) [throws Exception명 ---] {
[return 리턴값;]
}
- 접근지정자 :
private
,default
,protected
,public
모두 가능 - 활용지정자 : final, static, abstract, synchronized 등
- returnType : void 또는 데이터 타입 명시
- 메서드 이름 명명규칙 : 동사형 + 소문자형 첫글자 + 복합어일 경우 첫글자 대문자
- throws : 예외 클래스로 예외 처리
- return : returnType이 void일 경우 생략 가능. 아닐 경우 returnType의 데이터 타입에 맞게 반환해야 함. 0개 또는 다수개 존재 가능
(6) 생성자
[접근지정자] 클래스명과동일한생성자 ([dataType 매개변수, ---]) [throws Exception명 ---] { }
- 접근지정자 : 4개 모두 가능
- 생성자 : 클래스명과 동일하게 해야함