티스토리 뷰
✏️ static 키워드
- 객체 생성 없이 접근할 수 있는 멤버임을 의미하며, 변수나 메서드에 키워드로 사용된다
- static 키워드를 통해 생성한 멤버는 클래스가 메모리에 올라갈 때 자동으로 생성된다 = 객체 생성 없이 접근 가능하다
- 변하지 않고 유지되는 값은 매번 메모리에 로딩하는 과정을 거치는 것보다, 자동으로 올라가도록 하는 것이 더 효율적!
- 즉, 인스턴스 없이 사용이 가능하므로 프로그램 내에서 공통으로 사용되는 데이터들을 관리할 때 사용된다
- static은 공통으로 값을 일정하게 유지하고 싶은 경우에만 사용하고 남발해서는 안된다 (예) 상수, 싱글톤 패턴...
// 객체 생성할 필요가 없다
System.out.println(Math.abs(-10)); // 10
- java.lang.Math의 abs() 메서드는 static 한 성질을 가지므로, 객체 생성이 필요 없다
- 클래스 이름을 사용해 Math.abs()와 같은 형태로 바로 접근이 가능하다
✏️ final 키워드
- final 키워드는 변수, 메서드, 클래스에 사용될 수 있다
- 어디에 사용되는지에 따라 다른 의미를 가지지만, final 키워드가 사용된 경우 어떠한 제한을 건다는 의미는 동일하다
- final 변수
- 값을 수정할 수 없는 상수를 선언할 때 사용한다
- 특정 메서드에서 사용되기보다, 프로그램 전역에 걸쳐 사용되므로 일반적으로 static과 함께 사용된다
- final 메서드 : final 메서드는 Override가 제한된다
- final 클래스 : fianl 클래스는 상속이 불가능하다
'BackEnd > JAVA' 카테고리의 다른 글
이클립스 프로젝트 jdk버전 변경하기 (0) | 2021.11.15 |
---|---|
ColletionAPI (0) | 2021.11.12 |
싱글톤 패턴(SingleTone Pattern) (0) | 2021.10.25 |
[Ch.05] 2. String 배열, 다차원 배열 (0) | 2021.03.14 |
[Ch.05] 1. 배열 (0) | 2021.03.11 |
댓글