1. static
- static은 해석하면 '정적인' 이라는 뜻을 갖고 있다.
- Java에서 정적이다라는 것은 메모리에서 삭제되지 않는 것을 의미한다.
- static 키워드를 이용하면 프로그램 시작부터 종료까지 삭제되지 않는 변수나 메소드를 만들 수 있다.
2. 인스턴스 변수와 메소드
- 지역변수는 선언된 {}블록 안에서만 사용이 가능하다.
- 인스턴스 변수와 인스턴스 메소드는 객체를 생성했을때 사용한 변수와 메소드. 일반적으로 클래스에 선언되어 있는 변수와 메소드를 의미함.
- 객체가 메모리에 저장되어 삭제되기 전까지 인스턴스 변수와 인스턴스 메소드를 사용할 수 있다.
3. 클래스 변수와 메소드
- 클래스 변수와 클래스 메소드는 어플리케이션 시작부터 종료까지 메모리에서 삭제되지 않고 계속해서 사용가능한 변수와 메소드를 의미한다.
- 메모리의 static 영역/ 클래스 변수와 클래스 메소드는 static 영역에 저장되고 객체를 생성하지 않고도 사용할 수 있다.
- 클래스 변수와 클래스 메소드는 static 키워드를 이용해서 선언할 수 있다.
- (변수)접근제어자 (public, protected, default, private) static 타입 변수명;
(메소드)접근제어자 static 리턴타입 메소드명(); - 클래스원형(클래스명).변수명이나 클래스원형(클래스명).메소드명으로 클래스 변수와 클래스 메소드를 사용할 수 있다.
- 프로그램이 구동될 때 계속적으로 필요하거나 많은 클래스에서 공통적으로 사용되는 변수나 메소드를 static 키워드를 사용해서 클래스 변수와 클래스 메소드로 만들어 준다.
4. 제어자의 조합
- 클래스 : public, default 접근제어자, abstract(추상화해주는 키워드), final
- 메소드 : 모든 접근 제어자, final, abastract, static
- 멤버변수 : 모든 접근 제어자, final, static
- 지역변수 : final
5. 제어자의 조합에서 주의할 점
- 메소드에 static과 abstract를 동시에 선언할 수 없다.
- 클래스에 abstract와 final을 동시에 사용할 수 없다. (abstract는 상속과 관련, final은 상수)
- abstract 메소드는 private을 사용할 수 없다. (상속 관련이므로)
- 메소드에서 private와 final은 같은 의미(확장불가) 이므로 둘 중 하나만 선언한다.
728x90
'네이버클라우드 캠프 5기 > 학습내용 정리' 카테고리의 다른 글
5. JAVA - 중첩클래스 관련 정리 (0) | 2023.03.23 |
---|---|
4. JAVA - interface 관련 정리 (0) | 2023.03.23 |
3. JAVA - 이클립스에서 터미널에서 실행 가능Jar파일 만드는법 (0) | 2023.03.20 |
2. JAVA - 다형성 관련 정리 (0) | 2023.03.20 |
Eclipse 단축키 (0) | 2023.03.17 |