C# 기초 정리: 일반화 프로그래밍

일반화 프로그래밍(Generic Programming) 처리하는 로직은 같지만 형식이 다른 객체를 입력받아 처리하는 코드 작성 시 오버로딩하지않고 모든 형식을 지원하도록 프로그래밍 형식 매개변수(Type Parameter), 를 사용 class Program { /* 제네릭 메소드(Generic Method) */ static void CopyArray<T>(T[] source, T[] target) { for (int i = 0; i < source.Length; i++) target[i] = source[i]; } public static void […]

계속 읽기

C# 기초 정리: 배열, 컬렉션, 인덱서

가변 배열(Jagged Array) 가변 배열의 요소는 차원과 크기가 서로 다른 “배열” 다차원 배열을 사용하는 것보다 공간 절약 class Program { static void Main(string[] args) { /* 가변 배열(Jagged Array) */ int[][] jagged = new int[3][]; jagged[0] = new int[] { 1, 2, 3 }; jagged[1] = new int[] { 4, 5, 6, 7, 8 }; […]

계속 읽기

C# 기초 정리: 프로퍼티

프로퍼티(Property) 프로퍼티: 객체 내의 데이터에 접급할 수 있도록 하는 통로 은닉성(캡슐화)을 위해 필드는 private로, ​필드에 접근하는 메소드는 public으로 선언 이 경우 get/set 메소드를 일일이 구현해야 함​ 프로퍼티를 사용하면 get/set 메소드를 구현할 필요가 없음 class NameCard { private string name; /* name에 접근하기 위한 프로퍼티 */ public string Name { /* get: 필드 값 읽기 접근자​ […]

계속 읽기

C# 기초 정리: 클래스, 구조체, 인터페이스, 추상 클래스

  생성자와 소멸자 생성자를 하나라도 정의하면 C# 컴파일러는 기본 생성자를 제공하지 않음 소멸자는 오버로딩 불가능, 한정자 지정 불가능, 호출 불가능 소멸자는 구현하지 않는 것이 좋음. CLR(Common Language Runtime)이 알아서 객체를 수거해가기 때문. class MyClass { private int id; private string name; /* 기본 생성자: 매개변수가 하나도 없음 */ public MyClass() { id = 1; name […]

계속 읽기
error: 마우스 우클릭 금지 !!