본문 바로가기

Today I Learned

[TIL][C#] 24.04.30 클래스 이해하기

클래스 이해하고 사용하기

C#은 객체지향 언어이다. 따라서 클래스를 잘 활용하여 코드를 작성해야 객체지향의 장점을 극대화 할 수 있다. 그 만큼 클래스는 많이 사용되기 때문에 정확한 이해가 필요하다.

 

힙(Heap)과 스택(Stack)

클래스를 선언하여 생성하는 과정에서의 데이터 이동에 관한 내용을 배웠다. 사실 눈에 정확히 보이지 않는 내용이기에 바로 이해하기 쉽지 않았다.

위 사진 상단의 코드를 분석하면,

Apple apple => Apple 클래스형 apple 을 선언 -> 스택 메모리를 사용

new Apple() => Apple 클래스의 생성자를 통해 새로운 클래스를 생성 -> 힙 메모리를 사용

위 사진이 의미하는 바는 위와 같다.

간단히 해석하자면

apple이라는 하나의 사과 개체를 new Apple()을 통해 새로운 클래스(박스)를 생성하여 주소값을 참조한 것이다.

 

솔직히 말하면 아직도 잘 이해가 가지는 않는다. 많이 사용하는 기능이지만 이 기능이 내부적으로 어떤 절차를 가지는지 정확히 파악하지 못했다. 앞으로 코드를 작성하며 위와 같은 절차에 대해 한 번 더 생각하는 습관을 가져보고자 한다.

 

24.04.30 Today I Learned