컴퓨터 지식 네트워크 - 컴퓨터 지식 - C# 프로그램 실행 순서

C# 프로그램 실행 순서

C# 클래스의 초기화 순서

상속된 클래스의 정적 데이터 멤버 초기화,

상속된 클래스의 정적 생성자(클래스 이름에서 첫 번째 time 참조될 때 호출됩니다. 해당 생성자가 없으면

정적 데이터 멤버가 언제 초기화될지 예측할 수 없습니다.)

상속된 클래스 초기화 프로그램의 인스턴스 데이터 멤버입니다. /p>

상속된 클래스의 생성자의 내용을 실행하기 전

기본 클래스의 정적 데이터 멤버 초기화는 static int a = 1입니다. /// 클래스 데이터 멤버 정의

기본 클래스의 정적 생성자(기본 클래스의 클래스 이름이 상속된 클래스보다 먼저 참조되는 경우 기본 클래스가 먼저 실행됩니다.

정적 생성자)

기본 클래스의 인스턴스 유형 데이터 멤버의 초기화

기본 클래스의 생성자

그런 다음 생성자의 내용을 실행합니다. 상속된 클래스의 ;

예:

public class Base

{

A: private static int Number = 12;

B: private int localNumner = 1;

C: static Base()

{

///

}

D: 공용 Base()

{

}

}

공용 클래스 하위: 기본

{

E: private static int ChildNumber = 14;

F: private int local_child_number = 7;

G: 정적 Child()

{

///

}

H: public Child()

{

나: ///

}

}

자식 child = new Child();

초기화 순서는

E G F H A C B D I;

클래스의 클래스 이름이 처음 참조될 때 정적 생성자가 호출됩니다.

public class Test

{

static Test()

{

}

공개 staitc int 계정

{

가져오기

{

반환 1;

}

}

/// 예시

public static int GetAccount()

{

return 1;

}

공개 클래스 중첩

{

}

공개 대리자 void Add();

}

X1일 때: 계정을 테스트합니다.

t();

X2: 테스트 a = new Test();

X3: Test.GetAccount();

X4: Test.Nested p = new Test.Nested();

X5: Test.Add a = new Add(someMethods);

{ 그 중 하나가 나타나면 Test의

를 호출하세요. 정적 생성자

上篇: D800과 5D3의 차이점, 복사하지 말고 촬영에 적합한 것은 무엇입니까? 下篇: 두 컴퓨터는 모두 데스크톱 컴퓨터입니다. 한 컴퓨터는 무선 인터넷 액세스를 위해 Wi-Fi를 사용하고 다른 컴퓨터는 무선 네트워크 카드를 사용하여 두 컴퓨터 모두에서 인터넷에 액세스하려면 어떻게 해야 합니까?
관련 내용