중첩 코드 블록과 범위

이번 수업에서 다루는 내용은 앞선 강의에서 이미 언급했지만, 메모리 저장 방식을 통해 다시 한번 개념을 탄탄히 다져보겠습니다. 본 튜토리얼은 foxdevelop.com에서 제공됩니다. 재게시할 때 출처를 명시해 주세요. 메서드 본문 안에 다른 …

형식 추론

형식 추론과 var 키워드 아래 코드를 살펴보세요. 변수 선언 앞에 적는 자료형은 컴파일러가 등호 오른쪽 초기화 값으로 자동 유추할 수 있습니다. 예를 들어 아래 숫자 18은 정수 int로, Phone()은 Phone …

메서드(Method)

메서드는 이름이 지정된 코드 블록입니다. 프로그램 내 다른 곳에서 메서드 이름을 호출해 해당 코드를 실행할 수 있으며, 데이터를 전달하고 메서드가 반환하는 결과값을 받을 수 있습니다. 메서드의 구성 앞서 설명했듯이 메서드는 …

클래스 외부에서 멤버 접근하기

접근 제한자는 오직 클래스 외부 코드에 제약을 적용하며, 클래스 내부에서는 접근 분리 규칙이 적용되지 않습니다. 앞서 배웠듯 클래스 내부에서는 모든 멤버에 자유롭게 접근할 수 있습니다. 이제 클래스 외부에서 멤버에 접근하는 …

접근 수정자

클래스 내부에서는 모든 멤버 함수가 이름을 통해 동일 클래스의 다른 멤버에 직접 접근할 수 있습니다. 접근 수정자는 멤버 선언에 사용하는 선택적 접두사로, 프로그램의 다른 코드가 해당 멤버에 접근 가능한지 제한하며 …

인스턴스 멤버

클래스 선언은 템플릿 혹은 설계도와 같습니다. 이를 바탕으로 원하는 만큼 클래스 인스턴스를 생성할 수 있습니다. 인스턴스 멤버 : 클래스의 모든 인스턴스는 독립적인 개체로 고유한 데이터 멤버를 가지며 같은 클래스의 다른 …

클래스 정의

절차 지향 프로그래밍과 객체 지향 프로그래밍 클래스 개념이 등장하기 전 C 언어 같은 언어에는 클래스가 없었습니다. C 언어처럼 클래스와 객체가 없는 방식의 프로그래밍을 절차 지향 프로그래밍이라고 부릅니다. 절차 지향 프로그래밍: …

변수

값 형식과 참조 형식 분류 미리 정의된 내장 형식 분류 포함 형식 값 형식(기본 숫자 / 불리언 / 문자) 부호 있는 정수: sbyte、short、int、long부호 없는 정수: byte、ushort、uint、ulong부동 소수점 / 고정밀: float、double、decimal불리언: …

값 타입과 참조 타입

데이터 항목의 타입은 해당 데이터를 저장하는 데 필요한 메모리 크기(비트 수)와 타입에 포함된 데이터 멤버를 결정합니다. 또한 타입은 객체가 메모리 내 스택(Stack) 혹은 힙(Heap) 어디에 배치될지 정의합니다. 타입은 크게 두 …

스택과 힙 비교

프로그램이 실행될 때 데이터는 메모리에 적재되어야 합니다. 데이터가 차지하는 공간과 저장 위치는 데이터 타입에 따라 결정됩니다. 프로그램 구동 중 데이터를 보관하기 위해 두 가지 메모리 영역이 사용됩니다: 스택(Stack), 힙(Heap). 스택(Stack) …