인스턴스 멤버: 객체를 생성한 후 사용할 수 있는 필드와 메소드

this: 객체 내부에서 인스턴스 멤버에 접근하기 위한 키워드

 

정적 멤버: 객체를 생성하지 않고 사용할 수 있는 필드와 메소드(클래스에 소속된 멤버, 클래스 멤버)

static block: 클래스가 메모리로 로딩될 때 자동적으로 실행되는 block

 > 인스턴스 필드는 생성자에서 초기화하지만, 정적 필드는 객체 생성 없이도 사용해야 하므로 생성자에서 초기화 작업을 할 수 없다.

 > 정적 메서드, 블록 내부에는 인스턴스 필드나 인스턴스 메소드를 사용할 수 없다. 객체 자신의 참조인 this 키워드도 사용 불가. 객체를 먼저 생성하고 참조 변수로 접근해야 한다.

 

final 필드: 초기값이 저장되면 프로그램 실행 도중에 수정 할 수 없음

상수(static final)

 

접근 제한자(access modifier)

 

Annotaion

 - 컴파일러에게 코드 문법 에러를 체크하도록 정보를 제공

 - 소프트웨어 개발 툴이 빌드나 배치 시 코드를 자동으로 생성할 수 있도록 정보를 제공

 - 런타임 시 특정 기능을 실행하도록 정보를 제공

 

public @inteface AnnotaionName {

   타입 elementName() [default 값];

}

 

적용 대상: @Target

 > java.lang.annotaion.ElementType 열거 상수

유지 정책: @Retention

 > java.lang.annotation.RetentionPolicy 열거 상수

 

Reflection: 런타임 시에 클래스의 메타 정보를 얻는 기능

 > java.lang.reflect

리턴 타입 메소드명(매개변수) 설명
Field[] getFields() 필드 정보를 Field 배열로 리턴
Constructor[] getConstructors() 생성자 정보를 Constructor 배열로 리턴
Method[] getDeclaredMethods() 메소드 정보를 Method 배열로 리턴

method.invoke(new 객체()) : 해당 객체를 생성하고 생성된 객체의 메소드를 호출

'Java > Java' 카테고리의 다른 글

[이것이자바다]8. 인터페이스  (0) 2020.04.20
[이것이자바다]7. 상속  (0) 2020.04.20
[이것이 자바다]5. 참조 타입  (0) 2020.04.19
[이것이 자바다]3. 연산자  (0) 2020.04.18
[이것이 자바다]2. 변수, 타입  (0) 2020.04.18

+ Recent posts