Visual C# 2010 Step By Step 앞의 14 장 학습 요약

3142 단어 ***C#기초
1. 메서드에 선택적 매개변수를 지정합니다.
void method(int arg1, double arg2 = 0.0, string arg3 = "")
{
    // method body
}

2. 명명 파라미터를 이용하여 방법에 실참을 제공한다.
method(arg1 : 100, arg3 : "hello");

3. 다음 코드, 만약FormatException catch 블록의 코드가 Overflow Exception 이상을 생성한다면 이 이상은 현재 코드를 호출하는 방법, 즉 인접한 Overflow Exception catch 블록이 아닌 창고의 윗층으로 호출됩니다.
try
{
    // ...
}
catch (FormatException ex)
{
    // ...
}
catch (OverflowException ex)
{
    // ...
}

4. 프로젝트 속성에서 오버플로우 검사를 사용하거나 사용하지 않도록 설정할 수 있습니다.
5,checked 블록에 직접 넣은 정수 연산만 검사를 받을 수 있습니다.예를 들어 블록에 방법이 호출되면 호출 방법의 정수 연산을 검사하지 않는다.
6. 포장의 목적:
① 방법과 데이터를 하나의 클래스에 통합한다. 즉, 분류를 지원하기 위한 것이다.
② 방법과 데이터에 대한 접근을 제어한다. 즉, 클래스의 사용을 제어하기 위한 것이다.
7. 클래스의 필드는 자동으로 초기화되지만 방법에서 설명한 변수는 초기화되지 않습니다.
8.const 필드도 정적 필드이지만, 설명할 때static 키워드를 사용하지 않습니다.
9. 정적 클래스는 정적 구성원만 포함할 수 있고 정적 클래스는 순전히 도구 방법과 필드의 용기로 사용된다.
10. 정적 방법에서는 클래스에 정의된 실례 필드에 접근할 수 없습니다.
11. 익명 클래스를 만듭니다.
var myAnonymousObject = new { Name = "Silent", Age = 20 };

12. C#의 string 유형은 참조 유형입니다.
13. 비어 있는 유형의 Value 속성은 읽기 전용입니다.
14.ref 매개 변수와out 매개 변수는 모두 실참의 별명이다. 차이점은ref 실참이 전달되기 전에 초기화되어야 하고out 매개 변수는 방법 내부에서 그 값을 부여해야 한다는 것이다.
15. 컨테이너는 하나의 데이터 항목을 창고에서 자동으로 무더기로 복사하는 행위이다.
int i = 42;
object o = i;  
//              ,
//    i              ,
//    o      。

16. is 조작부호는 대상의 유형이 기대 유형인지 검증하는 데 사용되며 as 조작부호는 대상을 지정한 유형으로 변환하려고 시도합니다.
17. C#의 열거 및 구조는 값 유형에 속합니다.
18. 열거 유형이 사용하지 않는 기본 데이터 유형에 기반하도록 선택할 수 있다.
enum Season : byte { Spring, Summer, Fall, Winter }

19. 구조에 대해 자신의 기본 구조기를 설명할 수 없다. 왜냐하면 컴파일러는 항상 구조에 기본 구조 함수를 자동으로 생성하기 때문이다.
20. 구조의 비기본 구조 함수에서 모든 필드를 초기화하는 것을 스스로 책임져야 한다.
21. 구조는 실례 필드를 설명하는 동시에 초기화하는 것을 허용하지 않는다.
22. 열거 문자의 상수를 사용할 때 반드시 열거 유형을 접두사로 해야 한다.
currentSeason = Season.Spring;

23. 수조는 원소가 어떤 유형이든 인용 유형이다.
24.foreach 문장의 순환 변수는 그룹의 모든 요소의 읽기 전용 복사본이다.
25. 배열 요소 복사하기
int[] pins = { 1, 2, 3, 4 };

int[] copy1 = new int[pins.Length];
pins.CopyTo(copy1, 0);

int[] copy2 = new int[pins.Length];
Array.Copy(pins, copy, copy.Length);

int[] copy3 = (int[])pins.Clone();

26. 매개변수 배열을 사용하면 한 유형의 매개변수를 원하는 만큼 수락할 수 있습니다.
void method(params int[] args)
{
    // method body
}

27. 하나의 유형에 대한 확장 방법을 정의합니다.
static class Util
{
    public static int Negate(this int i)
    {
        return -i;
    }
}

28. 인터페이스는 어떠한 코드나 데이터도 포함하지 않는다. 이것은 계약에 해당하고 대상의 방법만 설명하며 이 인터페이스를 실현하는 클래스로 그 방법의 구체적인 실현 세부 사항을 완성한다.
29. 인터페이스의 어떤 방법에도 접근 수식자를 지정할 수 없습니다.인터페이스의 모든 방법은 은밀하게public 방법입니다.
30. 하나의 인터페이스를 실현하는 데 사용되는 모든 방법은public 접근성이 있어야 한다.그러나 현식 인터페이스를 사용하면 접근 수식자를 추가할 수 없습니다.
31. sealed 키워드로 장식된 클래스는 계승할 수 없고 sealed 방법은 파생 클래스에 의해 다시 쓸 수 없다.구조는 스텔스 밀봉.
32. 대상의 폐기 순서나 쓰레기 회수 시간에 대해 어떠한 가설도 하지 않는다.
33. 쓰레기 수거기는 분석기를 실행해야 하는 도달할 수 없는 대상을freachable 대기열에 넣고 마지막으로 하나의 단독 라인에서 이 대기열의 대상을finalize 조작을 실행한다.그래서 필요하지 않을 때는 분석기 사용을 최대한 피해야 한다.

좋은 웹페이지 즐겨찾기