C#의 자식 클래스 생성자에서 기본 클래스의 생성자 호출
이 자습서에서는 C#의 자식 클래스 생성자에서 기본 클래스의 생성자를 호출하는 메서드에 대해 설명합니다.
C#의 자식 클래스 생성자에서 기본 클래스의 기본 생성자 호출
C#에서는 자식 클래스의 인스턴스를 만들 때 기본 클래스의 기본 생성자가 컴파일러에 의해 자동으로 호출됩니다. 이 현상은 아래 코드 예제에 나와 있습니다.
using System;
namespace call_constructor_of_base_class {
public class baseClass {
public baseClass() {
Console.WriteLine("This is the Base Class");
}
}
public class childclass : baseClass {
public childclass() {
Console.WriteLine("This is the Child Class");
}
}
class Program {
static void Main(string[] args) {
childclass c = new childclass();
}
}
}
출력:
This is the Base Class
This is the Child Class
위 코드에서baseClass
는 기본 클래스이고childclass
는baseClass
를 상속하는 하위 클래스입니다. 자식 클래스childclass
의 인스턴스를 만들 때baseClass
의 기본 생성자가 컴파일러에 의해 자동으로 호출됩니다. baseClass
의 생성자는childclass
의 생성자보다 먼저 실행됩니다. 이 메서드는 자식 클래스의 생성자에서 기본 클래스의 생성자로 인수를 전달하는 데 사용할 수 없습니다.
C#에서base
키워드를 사용하여 자식 클래스 생성자에서 기본 클래스 생성자에 인수 전달
자식 클래스의 생성자에서 기본 클래스의 생성자로 인수를 전달하려면 base
키워드를 사용해야합니다. base
키워드는 하위 클래스의 인스턴스가 작성 될 때 호출되어야하는 기본 클래스의 생성자를 지정합니다. 다음 코드 예제는 C#에서base
키워드를 사용하여 자식 클래스의 생성자에서 기본 클래스의 생성자에 인수를 전달하는 방법을 보여줍니다.
using System;
namespace call_constructor_of_base_class {
public class baseClass {
public baseClass() {
Console.WriteLine("This is the Base Class");
}
public baseClass(int x) {
Console.WriteLine("The Child class passed {0} to the Base Class", x);
}
}
public class childclass : baseClass {
public childclass(int a) : base(a) {
Console.WriteLine("This is the Child Class");
}
}
class Program {
static void Main(string[] args) {
childclass c = new childclass(10);
}
}
}
출력:
The Child class passed 10 to the Base Class
This is the Child Class
위의 코드에서 우리는 하위 클래스childclass
의 생성자에서 기본 클래스baseClass
의 매개 변수화 된 생성자에 10을 전달합니다.
Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.
LinkedIn