안녕하세요.
오늘은 자바에서 중요하다고 말하는 인스턴스에 대해 무엇인지,
어떻게 생성하고 활용하는지를 알아보도록 하겠습니다.
[ JAVA ] 09. 객체(Object)와 인스턴스(Instance)는 같은 개념인가?
안녕하세요. 오늘은 자바에서 객체와 인스턴스의 개념에 대해 헷갈리는 부분을 해소하기 위해 두 개념에 대해 자세히 알아보도록 하겠습니다. 클래스, 객체, 인스턴스의 개념 알기 자바에서 클
giryu.tistory.com
인스턴스 기본적인 개념
* 위 글이 인스턴스의 개념을 이해하는 데 도움이 될 것 같습니다.
인스턴스란 무엇인가?
자바에서 클래스는 객체의 설계도이며, 이 설계도에 따라 생성된 실제 객체를 인스턴스라고 말합니다.
클래스는 추상적인 틀이고, 인스턴스는 그 틀을 기반으로 실제 데이터와 동작을 갖는 구체적인 객체를 말합니다.
인스턴스 생성과 메모리 할당
인스턴스를 생성하기 위해서는 'new' 키워드를 사용해야 합니다.
'new' 키워드를 이용하여 클래스의 생성자를 호출하면, 메모리에 해당 인스턴스가 할당됩니다.
MyClass myInstance = new MyClass();
인스턴스 변수와 메서드
클래스 내부에 선언된 변수는 인스턴스 변수로, 해당 클래스의 모든 인스턴스에게공유되지 않고 개별적으로 각 인스턴스에 할당됩니다.
마찬가지로 클래스 내부에 정의된 메서드는 인스턴스 메서드로, 인스턴스 변수를 활용하여 작업을 수행합니다.
인스턴스 활용
- 객체 지향 프로그래밍: 인스턴스를 이용하여 객체 지향 프로그래밍의 개념을 구현한다. 클래스와 인스턴스를 적절히 활용하여 데이터와 동작을 캡슐화하고 재사용 가능한 코드로 작성할 수 있다.
- 다형성: 인스턴스들을 상속과 인터페이스를 통해 다형성을 구현할 수 있다. 여러 클래스의 인스턴스를 같은 타입으로 다루는 것이 가능해진다.
- 객체 생성 및 관리: 프로그램이 실행되면서 필요한 객체들을 인스턴스화하여 사용하며, 이를 관리하고 생명주기를 관리한다.
인스턴스 소멸
자바에서는 가비지 콜렉터(Gabage Collector)가 더 이상 참조되지 않는 인스턴스를 감지하고 자동으로
메모리를 회수합니다.
개발자는 일반적으로 인스턴스의 소멸을 직접 다루지 않아도 됩니다.
이상으로 인스턴스에 대해 자세히 알아보았습니다.
자바에서 인스턴스는 클래스로부터 생성되며, 객체 지향 프로그래밍의 중요한 요소입니다.
인스턴스를 활용하여 데이터와 동작을 구현하고, 다형성과 모듈성을 높일 수 있습니다.
'Java' 카테고리의 다른 글
[ JAVA ] 14. Java의 구동 원리 및 JVM(Java Virtual Machine)에 대해 알아보자. (0) | 2023.07.26 |
---|---|
[ JAVA ] 12. 오버라이딩(Overriding)과 오버로딩(Overloading) (0) | 2023.07.17 |
[ JAVA ] 11. 추상 클래스(Abstract Class)와 인터페이스(Interface)에 대해 알아보자. (0) | 2023.07.15 |
[ JAVA ] 10. 추상화(Abstraction)란 무엇인가? (0) | 2023.07.15 |
[ JAVA ] 09. 객체(Object)와 인스턴스(Instance)는 같은 개념인가? (0) | 2023.07.09 |