학부 C#프로그래밍 07 : 은닉성(캡슐화) + 프로퍼티, 레코드 객체지향 프로그래밍의 특징 중 하나로 은닉성(캡슐화)가 있다. 접근 제한자 프로퍼티 클래스를 사용자에게 필요한 최소의 기능만 노출하고 내부를 감추는 것 외부로 제공해야 할 기능만 노출 접근 제한자 아래 접근 제한자로 수식하지 않은 멤버는 private로 지정됨 public : 클래스 안/밖 접근가능 protected : 클래스 안에서 접근가능. 파생 클래스에서는 접근 가능 private : ... 학부CsharpCsharp C#프로그래밍 08 : 상속성 클래스는 다른 하나의 클래스로부터 유산을 물려받을 수 있음 (=상속받을 수 있음) 다중상속은 지원하지 않는다. 부모 클래스(기반 클래스) : 상속해주는 클래스 자식 클래스(파생 클래스) : 상속 받는 클래스 sealed키워드를 붙여 클래스가 상속되지 않도록 하거나, 메소드가 자식클래스에서 오버라이드 되지 않도록 할 수 있다. 상속 제한 아래 코드는 sealed설정된 클래스를 상속하려고 해 오... 학부CsharpCsharp 자료구조 01 : 알고리즘 분석 알고리즘 + 데이터 구조 메모리 셀은 순번으로 나열되고, 임의의 수/문자 데이터를 저장 실험적 방법을 통한 실행시간 추정 알고리즘을 구현하는 프로그램을 작성 여러 알고리즘을 비교시 동일한 HW, SW환경 필요 특징 ← 실험적 방법의 한계 해결 원시작업 수 : 5n+3 T(n) : 알고리즘 T에 대한 최악의 실행시간 a : 가장 빠른 원시작업의 실행 시간 b : 가장 느린 원시작업의 실행 시간... 학부자료구조자료구조 자료구조 02 : 재귀 알고리즘 자신을 사용하여 정의된 알고리즘 비재귀적 알고리즘과 대비됨 작동원리 보류된 재귀호출을 위한 변수들에 관련된 저장/복구 → 컴퓨터에 의해 자동적으로 수행 장단점 장점 : 복잡한 문제를 적은 양의 코드로 가독성 좋게 서술 가능 단점 : 컴퓨터 성능부담 재귀 케이스 베이스 케이스 아래 규칙을 따르지 않으면 재귀적으로 문제 해결 불가 베이스 케이스 : 항상 재귀없이 해결가능한 베이스 케이스... 학부자료구조자료구조 자료구조 03 : 기초 데이터 구조(배열, 연결리스트) 끝첨자 : UB 또는 N-1 배열표시(선언) V[LB..UB] LB=0, UB=5인 1차원 배열은 V[5..10]와 같이 선언 베이스 : 배열의 첫 원소 ( e.g. V[5] ) → 어떤 셀 V[k]의 offset = k-LB ( e.g. V[9]의 offset = 9-5 = 4 ) (e.g.) V[0..2, 5..7] 인 2차원 배열의 메모리 할당 상태 V[0,5] V[0,6] V[0,7]... 학부자료구조자료구조 C#프로그래밍 06 : 메소드 객체가 아닌 클래스 자체에 소속되어, 프로그램 전체에서 유일한 필드/메소드로 지정함. 인스턴스에서 static 필드/메소드에 접근은 불가능 값에 의한 전달 아래 코드는 매개변수로 값을 전달하고, 객체 내 메소드에서는 이 값을 위한 별도 메모리 공간을 할당함. 참조에 의한 전달 ref 키워드를 붙여 참조를 전달하도록 설정할 수 있음 메소드 매개변수를 참조로 전달 아래 코드는 메소드를 호출할 때... Csharp학부Csharp C#프로그래밍 05 : 클래스 Person은 클래스 Name, Age는 필드 printInfo는 메소드 언제 실행될 지 장담할 수 없다. GC에 의해 호출된다. 객체가 아닌 클래스 자체에 소속되어, 프로그램 전체에서 유일한 필드/메소드로 지정함. 인스턴스에서 static 필드/메소드에 접근은 불가능 아래 코드는 매개변수로 값을 전달하고, 객체 내 메소드에서는 이 값을 위한 별도 메모리 공간을 할당함. ref 키워드를 붙여... Csharp학부Csharp C#프로그래밍 02 : 문자열 서식 {0}, {1}, ..., {n}을 서식항목 이라 한다. 서식항목 옵션 { 첨자, 맞춤 : 서식문자열 } 수 서식화 문자열 알파벳 + 자릿수 조합으로 사용 D : 10진수 E : E표기 F : 고정소수점 N : 콤마구분 X : 16진수 날짜시간 서식화 문자열 y 연도 M 월 d 일 h 시(12시간) / H 시(24시간) m 분 s 초 tt 오전 오후 ddd 약식요일(월) / dddd ddd+... Csharp학부Csharp
C#프로그래밍 07 : 은닉성(캡슐화) + 프로퍼티, 레코드 객체지향 프로그래밍의 특징 중 하나로 은닉성(캡슐화)가 있다. 접근 제한자 프로퍼티 클래스를 사용자에게 필요한 최소의 기능만 노출하고 내부를 감추는 것 외부로 제공해야 할 기능만 노출 접근 제한자 아래 접근 제한자로 수식하지 않은 멤버는 private로 지정됨 public : 클래스 안/밖 접근가능 protected : 클래스 안에서 접근가능. 파생 클래스에서는 접근 가능 private : ... 학부CsharpCsharp C#프로그래밍 08 : 상속성 클래스는 다른 하나의 클래스로부터 유산을 물려받을 수 있음 (=상속받을 수 있음) 다중상속은 지원하지 않는다. 부모 클래스(기반 클래스) : 상속해주는 클래스 자식 클래스(파생 클래스) : 상속 받는 클래스 sealed키워드를 붙여 클래스가 상속되지 않도록 하거나, 메소드가 자식클래스에서 오버라이드 되지 않도록 할 수 있다. 상속 제한 아래 코드는 sealed설정된 클래스를 상속하려고 해 오... 학부CsharpCsharp 자료구조 01 : 알고리즘 분석 알고리즘 + 데이터 구조 메모리 셀은 순번으로 나열되고, 임의의 수/문자 데이터를 저장 실험적 방법을 통한 실행시간 추정 알고리즘을 구현하는 프로그램을 작성 여러 알고리즘을 비교시 동일한 HW, SW환경 필요 특징 ← 실험적 방법의 한계 해결 원시작업 수 : 5n+3 T(n) : 알고리즘 T에 대한 최악의 실행시간 a : 가장 빠른 원시작업의 실행 시간 b : 가장 느린 원시작업의 실행 시간... 학부자료구조자료구조 자료구조 02 : 재귀 알고리즘 자신을 사용하여 정의된 알고리즘 비재귀적 알고리즘과 대비됨 작동원리 보류된 재귀호출을 위한 변수들에 관련된 저장/복구 → 컴퓨터에 의해 자동적으로 수행 장단점 장점 : 복잡한 문제를 적은 양의 코드로 가독성 좋게 서술 가능 단점 : 컴퓨터 성능부담 재귀 케이스 베이스 케이스 아래 규칙을 따르지 않으면 재귀적으로 문제 해결 불가 베이스 케이스 : 항상 재귀없이 해결가능한 베이스 케이스... 학부자료구조자료구조 자료구조 03 : 기초 데이터 구조(배열, 연결리스트) 끝첨자 : UB 또는 N-1 배열표시(선언) V[LB..UB] LB=0, UB=5인 1차원 배열은 V[5..10]와 같이 선언 베이스 : 배열의 첫 원소 ( e.g. V[5] ) → 어떤 셀 V[k]의 offset = k-LB ( e.g. V[9]의 offset = 9-5 = 4 ) (e.g.) V[0..2, 5..7] 인 2차원 배열의 메모리 할당 상태 V[0,5] V[0,6] V[0,7]... 학부자료구조자료구조 C#프로그래밍 06 : 메소드 객체가 아닌 클래스 자체에 소속되어, 프로그램 전체에서 유일한 필드/메소드로 지정함. 인스턴스에서 static 필드/메소드에 접근은 불가능 값에 의한 전달 아래 코드는 매개변수로 값을 전달하고, 객체 내 메소드에서는 이 값을 위한 별도 메모리 공간을 할당함. 참조에 의한 전달 ref 키워드를 붙여 참조를 전달하도록 설정할 수 있음 메소드 매개변수를 참조로 전달 아래 코드는 메소드를 호출할 때... Csharp학부Csharp C#프로그래밍 05 : 클래스 Person은 클래스 Name, Age는 필드 printInfo는 메소드 언제 실행될 지 장담할 수 없다. GC에 의해 호출된다. 객체가 아닌 클래스 자체에 소속되어, 프로그램 전체에서 유일한 필드/메소드로 지정함. 인스턴스에서 static 필드/메소드에 접근은 불가능 아래 코드는 매개변수로 값을 전달하고, 객체 내 메소드에서는 이 값을 위한 별도 메모리 공간을 할당함. ref 키워드를 붙여... Csharp학부Csharp C#프로그래밍 02 : 문자열 서식 {0}, {1}, ..., {n}을 서식항목 이라 한다. 서식항목 옵션 { 첨자, 맞춤 : 서식문자열 } 수 서식화 문자열 알파벳 + 자릿수 조합으로 사용 D : 10진수 E : E표기 F : 고정소수점 N : 콤마구분 X : 16진수 날짜시간 서식화 문자열 y 연도 M 월 d 일 h 시(12시간) / H 시(24시간) m 분 s 초 tt 오전 오후 ddd 약식요일(월) / dddd ddd+... Csharp학부Csharp