인스턴스 멤버 => 인스턴스 멤버 + 정적 멤버 모두 사용가능
정적 멤버 => 오로지 정적 멤버만 사용가능
인스턴스 멤버(필드, 메소드) | 정적 멤버(필드, 메소드) |
- new 연산자로 객체가 생성될 때 함께 생성 - 인스턴스 필드의 초기화 : 생성자가 담당 |
- 메소드 영역에 존재하여 클래스로 접근가능 - 정적 필드의 초기화 : static initializer 담당 (초기화는 단 한번만 수행되며 클래쯔 객체 생성 전에 수행) |
static initializer는 class loader에 의해서 .class파일(바이트코드)을 찾아서 Class타입의 객체로 만들어
메소드 영역에 집어 넣기 전에 오로지 단 한번 호출된다!!
접근 제한 | 적용대상 | 접근할 수 없는 클래스 |
public | 클래스, 필드, 생성자, 메소드 | 없음 |
protected | 필드, 생성자, 메소드 | 자식 클래스가 아닌 다른 패키지에 소속된 클래스 |
default | 클래스, 필드, 생성자, 메소드 | 다른 패키지에 소속된클래스 |
private | 필드, 생성자, 메소드 | 모든 외부 클래스 |
(1) 기본 타입(primitive type)
(2) String 타입
(3) 열거타입( Enumeration type)
(4) Class 타입(clazz) - 클래스, 인터페이스는 제외
(5) 위의 (1)부터 (4)까지의 타입으로 구성된 배열
•리플렉션(Reflection): 런타임에 클래스의 메타 정보를 얻는 기능
JAVA 7-2. 참조 타입 : 커맨드 라인 입력 (String[] args 용도) (0) | 2021.06.08 |
---|---|
JAVA 7-1. 참조타입 : 배열타입 (0) | 2021.06.06 |
JAVA. 자바프로그램 용어 정리(JDK, JRE, JVM 등) (0) | 2021.06.01 |
JAVA. 시스템 입출력 : BufferedReader 와 Scanner 비교 (0) | 2021.06.01 |
JAVA. 시스템 입출력 (0) | 2021.06.01 |