본문 바로가기

C#12

이것이 C#이다 Chapter 12 예외 처리하기 12.1 예외에 대하여 프로그램 사용자는 프로그래머가 생각한 대로만 프로그램을 다루지 않는다. 예를 들어, 숫자만 입력해야 하는데 문자를 입력하기도 한다. 사용자뿐만 아니라 갑자기 네트워크가 다운되기도 하는 등 프로그래머가 생각한 시나리오에서 벗어나는 사건을 예외(Exception)이라 부른다. 그리고 예외가 프로그램의 오류나 다운으로 이어지지 않도록 적절하게 처리하는 것을 예외 처리(Exception Handling)라고 한다. using System; namespace PracticeCSharp { class Program { static void Main(string[] args) { int[] arr = { 1, 2, 3 }; for(int i=0;i 2024. 3. 9.
이것이 C#이다 Chapter 11 일반화 프로그래밍 11.1 일반화 프로그래밍이란? 특수한 개념으로부터 공통된 개념을 찾아 묶는 것을 '일반화(Generalization)'라고 한다. 일반화 프로그래밍(Generic Programming)은 일반화를 이용하는 프로그래밍 기법이다. 일반화 프로그래밍이 일반화하는 대상은 '데이터 타입(Data Type)'이다. 예를 들어, 정수형 1차원 배열을 복사하는 메소드를 작성했다고 하자. void CopyArray(int[] source, int[] target) { for(int i=0; i 2024. 3. 9.
이것이 C#이다 Chapter 10 배열과 컬렉션 그리고 인덱서 10.1 배열 배열은 다음과 같은 형식으로 선언한다. // 데이터_타입[] 배열_이름 = new 데이터_타입[용량]; int[] scores = new int[5]; 배열의 각 요소에 데이터를 저장하거나, 요소 안에 있는 데이터를 읽어올 때는 배열 이름 뒤에 대괄호 [와 ]를 붙여주고, 그 사이에 인덱스(index)를 적어준다. 주의할 점은 인덱스는 1이 아닌 0부터 시작한다는 것이다. int[] scores = new int[5]; score[0] = 80; score[1] = 74; score[2] = 81; score[3] = 90; score[4] = 34; 같은 성격의 데이터라면 변수를 사용하는 것보다 배열로 정의한 다음 for문이나 foreach문과 함께 사용하는 것이 코드를 간결하게 만들 수.. 2024. 3. 8.
이것이 C#이다 Chapter 09 프로퍼티 9.1 public 필드의 유혹 Get/Set 메소드 대신 할당 연산자 '='를 읽거나 할당하고 싶을 때가 있다. 은닉성을 지키자니 귀찮고, 안지키자니 신경쓰인다. 프로퍼티를 이용하면 은닉성과 편의성을 가질 수 있다. class MyClass { private int myField; } GetXXX(), SetXXX() 메소드를 클래스에 추가해서 MyField에 접근할 수 있다. class MyClass { private int myField; public int GetMyField(){return myField;} public void SetMyField(int NewValue){myField = NewValue;} } 사용은 다음과 같이 할 것이다. MyClass obj = new MyClass();.. 2024. 3. 7.