C\#참고 방문 키워드:base,this

3310 단어 C#키워드basethis
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 */

좋은 웹페이지 즐겨찾기