본문 바로가기

Spring

Bean이 뭐에요? 그렇다면 객체는 뭔가요? 설명해주세요.

어제 회사에서 Bean이 뭔지 아냐는 질문을 받았다.

정확히 설명할 수 없었다. spring 시작하면 등록되는 설정... 어버버 하다가 대답을 못했다.

역시 기본이 탄탄해야 한다.

 

 

Q. Bean이 뭔가요?

A. 보통, java에서는 class를 생성하고 new를 사용해서 객체를 직접 생성합니다. Spring에서는 개발자가 직접 생성하지 않고 Spring이 객체를 생성해서 관리합니다. 이를 Bean이라고 합니다.

정리하자면, Spring이 만든 객체를 Bean이라고 합니다.

 

Q.그렇다면 class와 객체는 뭔가요? 또, 인스턴스는 뭔가요?

A. class는 일종의 설계도 입니다. 기능과 성능을 정의해 놓은 것 입니다. 설계도이므로 실제로 작동하지는 않습니다.

예를 들면, 핸드폰의 설계도입니다.

 

객체는 구현해야할 대상입니다. class에서 핸드폰이 가져야할 기능과 성능을 정의해놨습니다.

예를 들면 갤럭시 S20, 아이폰12 입니다.

 

인스턴스는 class를 통해서 구현해야할 대상, 즉 객체가 실제로 구현된 구체적인 실체입니다. 실제 메모리로 할당됩니다.

예를 들어서 앞에서 언급한 S20과 아이폰12는 같은 타입의 객체지만 실체는 다르므로, 다른 인스턴스입니다.

 

https://jootang2.tistory.com/120

 

클래스, 객체, 인스턴스가 뭐에요?

클래스 : 일종의 설계도, 각각의 기능과 성능을 정의해놓은 것 (설계도일 뿐, 실제로 작동하지는 않음) => 붕어빵 틀, 핸드폰의 설계도 객체 : 구현해야할 대상 => 붕어빵, 핸드폰(S20, IphoneSe2) , 붕

jootang2.tistory.com

이제 Bean이 뭔지 알았으니 Spring에서 이 Bean들을 어떻게 사용하는 지 알아보자! (이미 Bean들을 조회하는 방법에 대해서는 알아봤다.)

봄 부산은 처음이다~~ 벚꽃 보러가쟈~