목록Programming/grammar (7)
폐관수련
인터페이스란 인터페이스는 메서드만으로 이루어진 추상 클래스라고 정의할 수 있다. public interface IMyInterface// 관례적으로 인터페이스명은 I 접두사를 붙임 { // 0개 이상 메서드 선언 (비어 있는 인터페이스를 정의할 수 있음) void MyMethod(); } 메서드만으로 이루어진 추상 클래스와의 차이점 클래스는 다중 상속이 불가능하지만 인터페이스는 다중 상속이 가능 클래스 상속과 인터페이스의 상속이 동시에 가능 override 예약어가 필요 없음 특징 자식 클래스에서의 호출 class MyClass : IMyInterface { // 인터페이스명을 직접 붙이지 않는 경우, 반드시 public 접근 제한자를 명시 public void MyMethod() { } // 인터페이스..
Action 리턴값이 없는(void) 함수에 사용되는 delegate. 최대 16개까지 파라미터를 받아들일 수 있다. // Action Action actTmp = methodTmp; actTmp(string.Empty); Func 리턴값이 존재하는 함수에 사용되는 delegate. 최대 16개까지 파라미터를 받아들일 수 있다. // Func Func actTmp = methodTmp; bool returnValue = Func(string.Empty);
메타 문자 메타 문자 : 원래 그 문자가 가진 뜻이 아닌 특별한 용도로 사용하는 문자 . ^ $ * ? { } [ ] \ | ( ) 문자 클래스 [ ] - [ ] 사이의 문자들과 매치 - [ ] 안의 두 문자 사이에 하이픈(-)을 사용하면 두 문자 사이의 범위를 의미 ex) [a-zA-Z] : 알파벳 모두, [0-9] : 숫자 - ^ 메타 문자는 반대(not)를 의미 - 자주 사용하는 문자 클래스 \d : 숫자와 매치(=[0-9]) \D : 숫자가 아닌 것과 매치(=[^0-9]) \s : whitespace 문자와 매치(=[ \t\n\r\f\v]) \S : whitespace 문자가 아닌 것과 매치(=[^ \t\n\r\f\v]) \w : 문자, 숫자와 매치 (=[a-zA-Z0-9_]) \W : 문자, 숫..
리스트 컴프리헨션 : 입력 Sequence로부터 지정된 표현식에 따라 새로운 리스트 컬렉션을 빌드 하는 것 문법 [출력표현식 for 요소 in 입력Sequence [if 조건식]] 입력 Sequence : 입력으로 사용되는 Iteration이 가능한 데이타 Sequence 혹은 컬렉션 입력 Sequence는 for 루프를 돌며 각각의 요소를 하나씩 가져와 if 조건식이 있으면 해당 조건이 맞는지 확인 조건에 맞으면 출력 표현식에 각 요소를 대입하여 출력 결과를 리스트로 반환
public static void DrawReversibleFrame (System.Drawing.Rectangle rectangle, System.Drawing.Color backColor, System.Windows.Forms.FrameStyle style); Parameter rectangle : 그릴 사각형의 크기 backColor : 프레임 뒤에 나타나는 배경의 색 style : 프레임 스타일 동일한 파라미터로 재 호출하면 사각형이 보이지 않게 된다. MouseDown, MouseMove, MouseUp 이벤트를 사용하여 드래그 시 사각형을 생성할 수 있다.
1. List 가변 객체 타입. 컴파일 시 배열의 타입 추론을 하기 때문에 같은 타입만 저장 가능하고, 박싱/언박싱이 발생하지 않음. List A = new List();// 타입 지정 A.Add(0); 2. Array 선언시 크기 결정하기 때문에 고정적. 크기 변경 불가능. 같은 타입만 저장 가능. 다차원 배열 가능. int[] A = new Int[5];// 크기 및 타입 지정 A[0] = 0;// 인덱스로 접근 3. ArrayList 가변 객체 타입. 제네릭 타입으로 서로 다른 타입의 데이터를 저장할 수 있음. 박싱/언박싱이 발생. ArrayList A = new ArrayList(); A.Add("바보"); A.Add(0);// 다른 타입 저장 가능