base base 키 워드 는 파생 클래스 에서 기본 클래스 를 방문 하 는 구성원 에 게 사 용 됩 니 다: 기본 클래스 에서 이미 다른 방법 으로 재 작성 한 방법 을 호출 합 니 다. 파생 클래스 인 스 턴 스 를 만 들 때 호출 할 기본 구조 함 수 를 지정 합 니 다. 기본 클래스 접근 은 구조 함수,인 스 턴 스 방법 또는 인 스 턴 스 속성 접근 기 에서 만 가능 합 니 다. 예:파생 류 에서 기본 방법 을 호출 합 니 다. // base 키워드 접근 기본 클래스 구성원 using System; public class BaseClass { protected string _className = "BaseClass"; public virtual void PrintName() { Console.WriteLine("Class Name: {0}", _className); } } class DerivedClass : BaseClass { public string _className = "DerivedClass"; public override void PrintName() { Console.Write("The BaseClass Name is {0}"); //기본 클래스 호출 방법 base.PrintName(); Console.WriteLine("This DerivedClass is {0}", _className); } } class TestApp { public static void Main() { DerivedClass dc = new DerivedClass(); dc.PrintName(); } } /**//* 콘 솔 출력:The BaseClass Name is BaseClass This DerivedClass is DerivedClass*/파생 클래스 에서 기본 구조 함 수 를 호출 합 니 다. // keywords_base2.cs using System; public class BaseClass { int num; public BaseClass() { Console.WriteLine("in BaseClass()"); } public BaseClass(int i) { num = i; Console.WriteLine("in BaseClass(int {0})", num); } } public class DerivedClass : BaseClass { // 이 구조 기 호출 BaseClass.BaseClass() public DerivedClass() : base() { } // 이 구조 기 호출 BaseClass.BaseClass(int i) public DerivedClass(int i) : base(i) { } static void Main() { DerivedClass dc = new DerivedClass(); DerivedClass dc1 = new DerivedClass(1); } } /**//* 콘 솔 출력:in BaseClass() in BaseClass(1)*/주의 점 정적 방법 에서 사용 base 키 워드 는 틀 렸 다. base 주로 대상 을 대상 으로 개발 하 는 태 도 는 예시 2 에서 나타난다. this this 키워드 참조 클래스 의 현재 인 스 턴 스.다음은 this 비슷 한 이름 으로 숨겨 진 멤버 한정 대상 을 매개 변수 로 다른 방법 으로 전달 합 니 다. 선언 색인 기 예시: 예 를 종합 하 다. // this 키워드 keywords_this.cs using System; class Employee { private string _name; private int _age; private string[] _arr = new string[5]; public Employee(string name, int age) { // this 한정 필드,name 및 age 사용 하기 this._name = name; this._age = age; } public string Name { get { return this._name; } } public int Age { get { return this._age; } } // 직원 자 료 를 인쇄 하 다. public void PrintEmployee() { // Employee 대상 을 매개 변수 로 DoPrint 방법 에 전달 합 니 다. Print.DoPrint(this); } // 선언 색인 기 public string this[int param] { get { return _arr[param]; } set { _arr[param] = value; } } } class Print { public static void DoPrint(Employee e) { Console.WriteLine("Name: {0}Age: {1}", e.Name, e.Age); } } class TestApp { static void Main() { Employee E = new Employee("Hunts", 21); E[0] = "Scott"; E[1] = "Leigh"; E[4] = "Kiwis"; E.PrintEmployee(); for(int i=0; i<5; i++) { Console.WriteLine("Friends Name: {0}", E[i]); } Console.ReadLine(); } } /**//* 콘 솔 출력:이름: Hunts Age: 21 Friends Name: Scott Friends Name: Leigh Friends Name: Friends Name: Friends Name: Kiwis */
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다: