[C#기초지식] 정적 구조 함수, 한 면접문제의 이해에서 유래
3456 단어 구조 함수
원우의 면접 문제를 보고 궁금해서 결과를 시험해 봤어요.
public class A
{
public static int X=B.Y ;
public A()
{
++X;
}
}
public class B
{
public static int Y = A.X ;
static B()
{
++Y;
}
}
static void Main(string[] args)
{
Console.WriteLine(A.X.ToString());
Console.WriteLine("B.Y");
Console.WriteLine(B.Y.ToString());
Console.Read();
} 정답: 1.
처음에는 줄곧 납득이 되지 않았는데, 마지막에 이 문제를 조사한 것이 바로 정적 구조 함수라는 것을 알게 되었다.
정적 구조 함수: 정적 구조 함수는 C#의 새로운 기능으로 사실 매우 적게 사용되는 것 같다.그러나 우리가 정적 변수를 초기화하려면 그것을 사용해야 한다.이 구조 함수는 클래스에 속하는 것이지, 어느 실례에 속하는 것이 아니다. 즉, 이 구조 함수는 한 번만 실행된다는 것이다.즉, 첫 번째 실례를 만들거나 정적 구성원을 인용하기 전에.NET 가 자동으로 호출됩니다.
A.X.ToString()을 인쇄할 때:
static int X = B.Y ,X , 0;
B.Y , Y , ++Y, Y 1 ;
X, X , A , X 1。
B.Y.toString() :
static int Y = A.X, A X, , , B , static ++Y ,X 1 Y, Y 1;
:
1、 , 。 .NET , public private 。
2、 ,.NET , , 。
3、 。
4、 。 , , , 。
5、 。
6、 。
7、 , , 。
? , !!! 이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
구조 함수를 빌려 비원형을 계승하다Object {tag: Array[3]} tag: Array[3] 0: "js" 1: "html" 2: "aa" length: 3 __proto__: Array[0] __proto__: Article construc...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.