본문 바로가기
카테고리 없음

자바의 Modifier

by 잡다한 저장소 2019. 8. 23.

static 예약어

- 멤버 변수와 메서드 앞에 붙일 수 있는 modifier로서, 활용 방법을 제어함

static 예약어가 붙지 않는 인스턴스 변수

- 생성된 인스턴스마다  그 안에 클래스의 인스턴스 변수들이 포함됨

- 일반적인 멤버 변수를 인스턴스 변수라고 부름

 

static 예약어가 붙는 클래스 변수

- 클래스로부터 생성된 인스턴스에 포함되지 않는 변수

- 많은 인스턴스를 생성하더라도 메모리에 하나의 변수만 존재함

 

인스턴스 변수

- 클래스로부터 객체가 생성될 떄마다 각 객체의 변수들이 생성됨

 

클래스 변수

- 클래스로부터 생성된 모든 객체들이 하나의 클래스 변수를 공유함

- 객체가 생성될 떄 메모리 영역을 할당하지 않고,

클래스가 로딩되는 과정에서 메모리에 한번만 할당되는 멤버임 

 

클래스 메서드

- 클래스로부터 인스턴스를 생성하지 않고 호출이 가능함

- 인스턴스 변수는 인스턴스를 생성해야만 메모리가 잡히기 때문에

클래스 메서드에서 사용이 불가능함

*클래스 메서드에서는 클래스 메서드만 호출이 가능함

 

#생성자의 개념

생성자는 클래스로부터 객체를 생성할 때, 호출되며, 객체의 멤버 변수를 초기화하는데 사용되는 메서드임

객체를 생성활 때 객체에 필요한 값들을 초기화하는 개념은 배열과 동일함

 

객체를 생성할 때 객체에 필요한 값들을 초기화하는 개념은 배열과 동일함

- 정수형 배열객체를 생성하고 적절한 값들을 초기화하는 경우

 

# 생성자의 특징

-생성자는 클래스와 같은 이름을 가진 특별한 메서드로서 객체 생성시 맴버 변수의 초기화를 담당함

-일반 멤버 메서드와 달리 반환형이 없음 (void도 허용되지않음)

-생성자는 이름은 같지만 매개변수를 달리하여 여러 개를 중복 정의 할수 있음

-생성자는 키워드 'new'와 항상 같이 사용됨

-명시적으로 작성하지않을 경우, 기본 생성자가 제공됨