akxltmzk
9/17/2019 - 5:16 AM

interface

using UnityEngine;

// 미완성함수야. 자식클레스에서 완성 시켜줘
abstract public class A : MonoBehaviour
{
  abstract public void Abc;
}

// 인터페이스도 미완성 함수니깐 자식에서 완성 시켜줘
interface ITest
{
  void Bbc();
  
  // 함수 , 프로퍼티 , 인덱서, 이벤트 만 가능 , !! 변수 선언 불가 !!
  int SalaryP{get; set;}
}

interface ITest2 :ITest //
{

}

//클레스는 하나만 상속 받을 수 있다. 그래서 인터페이스 개념이 생김(다중상속 가능)
public class Test : A, ITest2 // 자동으로 ITest까지 상속된다.
{
  public int SalaryP
  {
    get{};
    set{}};
  }
  
  // 미완성인 추상클레스틀 내가 완성!!
  public override void Abc()
  {
    print("class 오버라이딩!");
  }
  
  public void Bbc()
  {
    print("interface는 오버라이딩 필요없이 가져다씀!");
  }
}