전체 글

· C#
인터페이스 원래는 상속은 한번 밖에 못하지만, 인터페이스는 다중상속을 가능하게 만든다.(추상함수처럼 뼈대만 제공한다.) 인터페이스는 overrie가 필요없다.(추상함수는 필요함) 하지만 함수, 프로퍼티, 인덱서, 이벤트만 사용이 가능하다. 인터페이스끼리 상속이 가능하다.+(이름 앞에 I를 붙인다) 제네릭 형식 매개변수 T 불특정 타입의 매개변수를 받을때 사용한다. private void Print(T a)//함수를 호출할때 어떤 타입을 지정하냐에 따라서 매개변수 형식이 변경된다. { print(a); } private void Print(T a) where T: struct, class//이런 방식으로 매개변수 형식에 들어갈 수 있는 것을 제한할 수 있다. 람다식 (int a) => return a; 이..
· C#
상속 접근 지정자 public-타 클래스에서 모두 사용 가능 protected-상속 받은 자식 클래스만 사용 가능 가상함수(virtual) 부모_가상함수로 만듬(재정의 할 수 있도록 만듬) 자식_override로 가상함수를 재정의함 추상함수(abstract) 자식클래스에서 반드시 기능을 완성시켜야 하는 함수(부모-미완성, 자식-완성) 사용시 클래스도 추상클래스로 만들어줘야함-미리 토대를 만들어놈(다형성) 프로퍼티 민감한 정보를 함부로 읽거나 쓰지 못하게함(은닉성) private int a; public int A { get{}//읽기 set{}//쓰기 } //단순 프로퍼티 public int A{get;set} set에 private를 붙이면 다른데서는 참조는 불가능해짐(은닉성 보장) +인덱서(일종의 프..
· C#
C#이 가끔 헷갈려서 복습을 하고 간단하게 정리하였다. 구조체 Stuct는 Class가 생기기 전에 사용하였다. 한마디로 Sturct는 구버전, Class는 신버전이다. Struct를 없애지 않은 이유는 지금까지 Struct로 써왔던 코드들 때문에 호환성을 위해 없애지 않았다. 특징으로는 직접 값 대입이 불가능(함수 파라미터로는 가능)하고 상속이 불가능하다. 생성자를 사용하여 편리하게 여러 값을 대입시킬 수 있다. Class와 Struct이 차이점 Class 주소 타입 A a = new A();와 같이 사용시 공간을 만들어 줘야됨 Struct 값 타입 알아서 처리됨 이벤트 EventHandler는 public event EventHandler OnA;로 선언하고 주로 OnA?.Invoke(this, Ev..
유태희
유태희