C#개체용

4146 단어 C#

전언


나는 이전에 다태를 깊이 이해한 적이 없어서 코드를 몇 번 두드린 후에 이런 해석적인 문장을 돌아보고 이것이 무슨 뜻인지 깨달았다

대상을 향한 6대 원칙

  • 단일 직책 원칙
  • 개폐원칙
  • 리씨전환원칙
  • 역치원칙에 의존
  • 인터페이스 격리 원칙
  • 디미트 원칙
  • 대상을 대상으로 하는 3대 특성의 봉인 계승 다태
  • 상속 관계에서 서로 다른 대상을 실례화하고 이런 대상은 같은 방법을 사용하지만 서로 다른 행위를 나타낸다. 이를 다태
  • 라고 한다.

    다태

  • C#에서 다태를 나타내는 세 가지 방식, 허법, 추상류, 인터페이스
  • 겉치레

  • 부류에서virtual로 수식하는 방법으로 이 방법의 공통된 기능을 실현하고 부류에서 이 방법을 다시 쓸 때base 키워드를 사용하여 부류의 이 방법을 호출할 수 있다
  • 리치 변환 원칙

  • 하위 클래스 대상은 부모 변수에 직접 값을 부여할 수 있다
  • 하위 클래스 대상은 하위 클래스의 구성원을 호출할 수 있지만, 하위 클래스 대상은 영원히 자신의 구성원만 호출할 수 있다
  • 부류 대상에 부류 대상이 있다면 이 대상을 부류 대상으로 강제로 전환할 수 있다
  • is와 as 둘 다 유형 변환

  • is 변환에 성공하여true로 돌아가지 않으면false
  • 로 돌아갑니다.
  • as 변환 성공, 대응하는 대상을 되돌려줍니다 실패는null
  • 로 되돌려줍니다
    리치 원칙을 써야만 해결할 수 있는 문제


  • 추상적인 방법(방법이 충분하고 아무런 방법체도 없을 때)

  • 허법은 방법체가 있고 추상적인 방법은 방법체가 없다
  • 추상적인 방법은 반드시 이불류가 실현되어야 한다
  • 키워드 abstract 키워드로 수식
  • 주의 사항
  • 추상적인 방법은 반드시 추상류에 있어야 한다. 추상류는 반드시 추상적인 방법이 있어야 한다
  • 추상류는 실례화될 수 없음
  • 장면 작업

  • 부류 중의 방법은 어떻게 실현되는지 모르기 때문에 부류를 추상류로 쓰고 방법을 추상법으로 쓸 수 있다
  • 부류 중의 방법은 기본적으로 실현되고 부류는 실례화되어야 한다. 부류를 하나의 일반 클래스로 정의하고 허법으로 다태를 실현할 수 있다
  • 부류의 방법이 기본적으로 실현되지 않으면 부류도 실례화되지 않고 추상류로 정의할 수 있다
  • 인터페이스(추상류의 방법은 모두 추상적인 방법일 때)

  • 이 추상류를 인터페이스의 형식으로 표현할 수 있다
  • 키워드인터페이스
  • 는 필드를 포함할 수 없지만 속성
  • 을 포함할 수 있습니다.
  • 자동 속성 사용
  • 방법체가 있을 수 없고 모두 추상적인 방법이지만 abstract로 수식할 필요가 없다
  • 액세스 수식자가 있을 수 없습니다. 기본값은 모두public
  • 입니다.
    주의 사항
  • 인터페이스의 모든 방법은 추상적인 방법이기 때문에 인터페이스가 실례화될 수 없다
  • 한 종류는 여러 인터페이스를 실현할 수 있고, 실현된 여러 인터페이스는 쉼표로 구분
  • 한 인터페이스는 여러 인터페이스를 계승할 수 있고 인터페이스 사이도 쉼표로 구분해야 한다
  • 류와 류 사이는 단상속
  • 장면 작업
  • 인터페이스는 일종의 능력, 일종의 규범이다. 우리가 현재 존재하는 유형의 계승 관계를 확장할 때 인터페이스로 해당하는 작업을 완성할 수 있다
  • 등록 정보

  • 속성은 두 가지로 나뉘는데 일반 속성과 자동 속성이다
  • 자동 속성은 대응하는 필드를 쓸 필요가 없습니다. C#컴파일러는 자동으로 대응하는 필드를 추가합니다
  •  public int Age{get; set;} // , 
    

    장면 대비 사용

  • 허법 부류 중의 개별 방법은 허법으로 실현하고 자류 계승은 다시 쓸 수 있다
  • 추상류, 부류는 일련의 규범을 정의하고 부류에서 규범을 모두 실현한다
  • 인터페이스 기능 확장, 기존 클래스의 계승 관계 이외의 새로운 기능 확장
  • 봉인된 접근 수식자

  • 다섯 가지 수식기
  • private는 현재 클래스 내부에서만 접근할 수 있고 하위 클래스, 실례 대상은 [사유 접근]
  • 에 접근하지 못합니다.
  • public 현재 클래스, 하위 클래스, 실례 대상은 모두 [공개 방문]
  • 에 접근할 수 있다.
  • 인터넷은 현재 프로그램 집합 (프로젝트) 에서만 접근할 수 있습니다 [내부 접근]
  • 보호된 항목은 현재 클래스의 내부와 이 클래스의 하위 클래스에만 접근할 수 있고 실례적인 대상은 [보호된 접근]
  • 에 접근하지 못한다.
  • 보호된 인터넷은 두 가지 접근 권한을 더한 것이다
  • 수식류
  • 수식할 수 있는 접근 수식자는 두 개,public와internal
  • 클래스의 기본 접근 수식자는 인터넷
  • 이다.
    코스메틱 클래스 멤버
  • 다섯 가지 방문 수식자 모두 수식류의 구성원
  • 클래스의 구성원 기본 접근 수식자는private
  • 정태


    정적 필드
  • static 키워드로 장식된 필드, 정적 필드
  • 라고 합니다
  • 정적 필드 재할당 가능
  • 정적 필드에 저장된 데이터는 메모리에 1부
  • 만 있음
  • 정적 구성원은 클래스 이름만 통과할 수 있습니다.구성원 이름 접근, 실례 대상 접근불가
  • 정적 속성
  • 정적 속성은 정적 필드를 봉인하는 데 사용되며 비정적 필드를 봉인하는 데 사용할 수 없음
  • 정적 구성원이 비정적 구성원보다 먼저 존재하기 때문
  • 정적 방법
  • static로 수식하는 방법은 유명으로 한다.정적 방법명 호출
  • 정적 방법에서 비정적 구성원을 호출할 수 없음
  • 일반적인 방법에서 정적 구성원을 호출할 수 있음
  • 정적 구조 방법
  • 한 종류는 정적 구조 방법이 하나밖에 없다
  • 정적 구성원을 초기화하는 데 사용되며 액세스 수식자도 없고 매개 변수도 없음
  • 정적 클래스에 정의할 수도 있고 비정적 클래스에 정의할 수도 있다
  • 정적 구조 방법은 프로그램이 첫 번째 실례를 만들거나 어떤 정적 구성원을 인용하기 전에 클래스에서 정적 구성원의 초기화를 완성한다
  • 정적 클래스
  • 클래스의 구성원이 모두 정적 구성원일 때 정적 클래스
  • 로 성명할 수 있다
  • 키워드 static
  • 정적 클래스에 비정상적인 구성원이 존재할 수 없음
  • 정적 클래스는 실례화할 수 없음
  • 주의
  • 먼저 정적 구성원이 있고, 나중에 실례 구성원이 있으며, 나중에 먼저 나타난
  • 을 호출할 수 있다.

    포장과 해체

  • 포장 값 유형 - 참조 유형
  • 해체 인용 유형-값 유형
  • 두 가지 유형은 상속 관계가 있을 때만 포장 또는 해체 작업이 발생할 수 있다
  • 포장과 해체는 본질적으로 데이터가 창고 공간과 퇴적 공간에 저장되는 변경이다. 빈번한 해체는 운행 속도를 낮추고 가능한 한 적게 사용할 수 있다
  • 사전 컴파일 명령 (프로그램이 정식으로 컴파일되기 전에 실행하면 실행 가능한 코드로 바뀌지 않습니다)

  • 구역 명령
  • #region Info
    ......
    #endregion 
    

    객체 초기화기

  • 문법 양식
  • = new (){ = , = };
  • 응용 장면은 한 클래스의 속성이 매우 많을 때 각종 상황에 대해 구조 방법을 정의할 수 없고 대상 초기화기로 속성의 값을 완성할 수 있다
  • 류 중 구조 방법이 필요 없음
  • 좋은 웹페이지 즐겨찾기