불가능은 약간의 시간이 주어지면 사라진다
멤버 접근 지정
static 멤버
: 클래스의 멤버들 중 static 지시어로 선언된 멤버
static멤버는 클래스당 하나만 생성되는 멤버로,동일한 클래스의 모든 객체들이 공유하므로 클래스 멤버라 부른다
non-static멤버는 각 객체마다 생기므로 인스턴스 멤버라고 부른다.non static은 독립적인 공간을 할당받는다
static 멤버 사용
non-static 멤버가 객체 이름으로만 활용할 수 있는 것과 달리 static은 객체 이름이나 클래스 이름 모두 활용 가능
static의 활용
- 전역 변수와 전역 함수를 만들 때 사용
: 응용프로그램 작성 시 모든 클래스에서 공유하는 전역 변수(global variable)나
모든 클래스에서 호출할 수 있는 전역함수(global function)을 만들고자 할 때 있다
- 공유 멤버를 만들고자 할 때 사용
: static으로 선언된 필드나 메소드는 이 클래스의 객체들 사이에서 공유된다
static 메소드의 제약 조건
- static 메소드는 오직 static 멤버만 접근할 수 있다
- static 메소드에서는 this를 사용할 수 없다
final 클래스
: final이 클래스 이름 앞에 사용되면 클래스를 상속받을 수 없음을 지정
final 메소드
: 메소드 앞에 fina이 붙으면 이 메소드는 오버라이딩할 수 없음을 지정
final 필드
: 자바에서 final로 필드를 선언하면 그 필드는 상수가 된다
상수 필드는 한 번 초기화되면 값을 변경할 수 없다
final 키워드를 public static과 같이 선언하면,프로그램 전체에서 공유할 수 있는 상수가 된다
'Language & Framework & GIT > JAVA' 카테고리의 다른 글
[언어공부] 코테를 위한 JAVA 뽀개기 #1 (0) | 2022.10.20 |
---|---|
Java_Optional<T> isPresent(), ifPresent() 사용하기 (0) | 2022.08.21 |
오늘은 짧은 언어_06 (0) | 2022.08.09 |
오늘은 안 짧은 언어_05 (0) | 2022.08.06 |
오늘의 짧은 언어_03 (0) | 2022.08.03 |
댓글