Unity3D

[C#] Virtual 와 Override

일등하이 2013. 2. 21. 16:57
반응형

https://youtu.be/kmsocjH-keQ?list=PLTFRwWXfOIYBmr3fK17E0VhKPyYrGy75z 

상속 받은 클래스의 메소드를 재정의하고 싶을 때 Virtual 키워드를 사용한다.

 

이는 상속받은 각 클래스에 다른 연산 방식을 정의하고 싶을때 사용한다.

 

연산자(메소드) 재정의를 위해서는 상속할 클래스 메소드에 Virtual을

 

그리고 상속 받는 클래스에는 override 키워드를 사용한다.

 

public class Employee()

{

public virtual void GiveBonus(float amount)

{

currPay += amount;

}

}

 

public class SalesPerson () :  Employee

{

            // 재정의한다.

public override void GiveBonus(float amount)

{

currPay += amount * 0.1;

}

}

 

public class SalesPerson () :  Employee

{

            // 다음 같이 기존의 메소드를 불러 사용할 수도 있다.

public override void GiveBonus(float amount)

{

base.GiveBonus(amount * 0.1);

}

}

반응형