객체와 인스턴스의 차이점
비슷한 개념이지만 정확히 구별하면 인스턴스가 객체보다 큰 의미이다. 객체는 어떤 클래스를 사용해서 만들어진 것을 의미한다. 그리고 그 객체가 메모리에 할당되어 실제 메모리를 차지하는 것을 인스턴스라고 한다.
String str; str = new String("Hello world"); System.out.println(str);
위와 같은 코드에서 객체와 인스턴스를 구별해보자.
먼저 str은 String 클래스를 사용하여 객체를 선언한 것이다. 즉 아직 str에 문자열이 할당되어 있지 않은 상태이다.
그리고 다음 라인을 보자. new 키워드를 사용하여 JVM에 데이터가 생성된 것을 보여준다. 이렇게 객체를 실제로 메모리에 할당하는 과정을 인스턴스화(instantiate)라고 한다. 즉 객체 str에 "Hello world"라는 문자열을 할당해서 인스턴화하였다. 그리고 이렇게 인스턴스화된 것을 인스턴스라고 부른다.
'Program > JAVA' 카테고리의 다른 글
[JAVA] 생성자 (0) | 2020.03.02 |
---|---|
[JAVA] Servlet :: Servlet(서블릿) 이란? (0) | 2016.12.07 |
[JAVA]클래스(Class), 객체(Object), 인스턴스(Instance), 생성자(Constructor) (0) | 2016.03.08 |
[JAVA] 재귀 기초 - Factorial (0) | 2015.11.30 |
상속(extends), 추상 클래스(abstract), 인터페이스(implement) 정리 (0) | 2015.09.14 |