반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 디비버
- WAS
- JSON
- 인텔리제이
- 오라클
- 이클립스
- 보안
- IntelliJ
- 마이바티스
- git
- svn
- 상태코드
- 톰캣
- SQL
- Eclipse
- Tomcat
- 자바스크립트
- Server
- oracle
- db
- mybatis
- 자바
- 모바텀
- Linux
- DBeaver
- JQuery
- java
- HTTP
- Redis
- Javascript
Archives
- Today
- Total
JongTachi의 개발 블로그
[IT Info] 인스턴스(Instance)와 객체(Object) 본문
728x90
반응형
객체지향 프로그래밍(OOP)에서 자주 사용되는 두 가지 개념인
인스턴스(Instance)와 객체(Object)에 대해 알아보도록 하겠습니다.
지금부터 설명드릴 내용은 굉장히 중요한 개념입니다. 이 두 용어는 종종 혼용되기도 하지만
몇가지 중요한 차이가 있으니 설명을 자세히 보시길 바랍니다.
1, 인스턴스와 객체의 정의
1) 인스턴스(Instance)
인스턴스는 클래스를 기반으로 실제로 메모리에 할당되어 생성된 객체를 의미합니다. 클래스는 일종의 설계도이고, 인스턴스는 이 설계도를 바탕으로 만들어진 실체입니다. 한 클래스에서 여러 개의 인스턴스를 생성할 수 있습니다.
2) 객체(Object)
객체는 프로그래밍에서 실제로 존재하거나 개념적으로 표현할 수 있는 것을 말합니다. 객체는 데이터(속성)와 기능(메서드)을 함께 가지며, 클래스라는 틀을 기반으로 생성됩니다. 예를 들어, "자동차" 클래스는 자동차 객체를 생성할 수 있는 틀이 됩니다.
2. 객체 vs 인스턴스 (차이점)
- 객체는 항상 인스턴스이지만, 인스턴스는 항상 객체가 아닙니다. 클래스의 인스턴스는 해당 클래스를 기반으로 생성된 구체적인 객체를 의미합니다.
- 객체는 메모리에 할당된 실제 데이터를 가지고 있지만, 클래스의 정의만으로는 실제 데이터가 없습니다.
3. 예시
// 자동차 클래스 정의
class Car {
String brand;
String model;
// 생성자
public Car(String brand, String model) {
this.brand = brand;
this.model = model;
}
}
public class Main {
public static void main(String[] args) {
// Car 클래스를 기반으로 객체(인스턴스) 생성
Car myCar = new Car("Toyota", "Camry");
// myCar는 Car 클래스의 인스턴스이며, 동시에 객체입니다.
System.out.println("브랜드: " + myCar.brand);
System.out.println("모델: " + myCar.model);
}
}
이 코드에서 Car 클래스는 자동차를 나타내며, Main 클래스에서는 Car 클래스를 기반으로 객체를 생성하고 출력합니다. myCar는 Car 클래스의 인스턴스이면서 동시에 객체입니다. 프로그램을 실행하면 "Toyota" 브랜드와 "Camry" 모델이 출력될 것입니다.
728x90
반응형
'IT Information' 카테고리의 다른 글
[IT Info] DRM(Digital Right Management) / 정보 보호 기술 (0) | 2024.02.01 |
---|---|
[IT Info] Merge와 rebase의 차이 (0) | 2024.01.19 |
[IT Info] eclipse(이클립스) 사용하지 않은 import 한꺼번에 없애기 (0) | 2023.11.02 |
[IT Info] FTP(파일 전송 프로토콜)란? (0) | 2023.10.30 |
[IT Info] Docker(도커)란? (0) | 2023.08.16 |