데이터 보관하기

2015. 8. 3. 01:40프로그래밍/C#

728x90
728x90
변수
- C# 코드를 작성하면서 변수를 만들 때는(선언, Declare) 단순히 변수를 
만드는 것이 아니라 그 내면의 메모리 공간도 함께 생각해야 한다. 
- 변수는 데이터를 담는 그릇과 같다. 용량이 넘어서면 넘치듯이 변수 또한
데이터 형식의 크기를 넘어선다면 오류가 발생한다.

값 형식(Value Types)
데이터 삭제 - 해당 지역이 끝나면 데이터 삭제
저장 위치 - 스택

참조 형식(Reference Types)

데이터 삭제 - 해당 데이터 사용의 끝을 알리면 가비지 컬렉터가 데이터 삭제

저장 위치 - 힙


Object 타입

- 객체라는 뜻으로 사용되는데, 어떠한 물건(데이터)이든지 다룰 수 있는 형식을 말한다.

- 상속을 받으므로써 데이터와 메소드를 물려받은 자식으로써 부모와 똑같이 동작할 

수 있게되어 자식을 부모로 간주한다.

- 그렇기 때문에 기본 자료형 뿐만 아니라 모든 복합 데이터 형식 또한 자동으로 

object 형식으로부터 상속 받게 되는 것이기에 모든 데이터 형식을 다룰 수 있다.


박싱과 언박싱

- object 형식은 참조 형이기 때문에 힙에 데이터를 할당한다.

- 그렇기 때문에 다른 값 형식 데이터와 저장되는 메모리 공간이 다르기 때문에 

값 형식 데이터를 힙에 할당하기 위한 “박싱(Boxing)”기능을 제공한다.

- 반대로 힙에 있던 값 형식 데이터를 다시 할당해야 하는 경우에는

“언박싱(Unboxing)” 작업이 일어난다.



   




728x90
반응형

'프로그래밍 > C#' 카테고리의 다른 글

[.NET, C#] 비동기 네트워크 API  (0) 2016.02.14
직렬화  (0) 2015.08.03
Delegate  (2) 2015.08.03
C#이란?  (0) 2015.08.03
가비지 컬렉션  (0) 2015.07.28
ref와 out 차이  (0) 2015.06.23
처음만드는 C# 기초 입출력  (0) 2015.06.22