「Unity/Csharp/クラス/インターフェイス」の版間の差分
提供: 初心者エンジニアの簡易メモ
(ページの作成:「==サンプル== IUseCaseインターフェイスをAdUseCaseクラスに実装 呼び出し AdUseCase adUseCase = new AdUseCase(); AdUseCase.cs <pre> public class AdU...」) |
|||
(同じ利用者による、間の4版が非表示) | |||
行3: | 行3: | ||
呼び出し | 呼び出し | ||
− | + | <pre> | |
+ | AdUseCase adUseCase = new AdUseCase(); | ||
+ | adUseCase.Start(); | ||
+ | </pre> | ||
AdUseCase.cs | AdUseCase.cs | ||
行26: | 行29: | ||
void Start(); | void Start(); | ||
void Destroy(); | void Destroy(); | ||
+ | } | ||
+ | </pre> | ||
+ | |||
+ | ==インターフェイスを2つ実装したサンプル== | ||
+ | IUseCaseインターフェイスをUserUseCaseクラスに実装 | ||
+ | |||
+ | 呼び出し | ||
+ | <pre> | ||
+ | UserUseCase userUseCase = new UserUseCase(); | ||
+ | userUseCase.Start(); | ||
+ | (userUseCase as IUserDelegate).OnClickUser(); // IUserDelegateだけのメソッドを持つインスタンスにして、メソッドを実行したい場合。 | ||
+ | </pre> | ||
+ | |||
+ | UserUseCase.cs | ||
+ | <pre> | ||
+ | public class UserUseCase : IUseCase, IUserDelegate | ||
+ | { | ||
+ | public void Start() | ||
+ | { | ||
+ | Debug.Log("UserUseCase.Start"); | ||
+ | } | ||
+ | public void Destroy() | ||
+ | { | ||
+ | Debug.Log("UserUseCase.Destroy"); | ||
+ | } | ||
+ | public void OnClickUser() | ||
+ | { | ||
+ | Debug.Log("UserUseCase.OnClickUser"); | ||
+ | } | ||
+ | } | ||
+ | </pre> | ||
+ | |||
+ | IUseCase.cs | ||
+ | <pre> | ||
+ | interface IUseCase | ||
+ | { | ||
+ | void Start(); | ||
+ | void Destroy(); | ||
+ | } | ||
+ | </pre> | ||
+ | |||
+ | IUserDelegate.cs | ||
+ | <pre> | ||
+ | public interface IUserDelegate | ||
+ | { | ||
+ | public void OnClickUser(); | ||
} | } | ||
</pre> | </pre> |
2023年4月20日 (木) 05:40時点における最新版
サンプル
IUseCaseインターフェイスをAdUseCaseクラスに実装
呼び出し
AdUseCase adUseCase = new AdUseCase(); adUseCase.Start();
AdUseCase.cs
public class AdUseCase : IUseCase { public void Start() { Debug.Log("AdUseCase.Start"); } public void Destroy() { Debug.Log("AdUseCase.Destroy"); } }
IUseCase.cs
interface IUseCase { void Start(); void Destroy(); }
インターフェイスを2つ実装したサンプル
IUseCaseインターフェイスをUserUseCaseクラスに実装
呼び出し
UserUseCase userUseCase = new UserUseCase(); userUseCase.Start(); (userUseCase as IUserDelegate).OnClickUser(); // IUserDelegateだけのメソッドを持つインスタンスにして、メソッドを実行したい場合。
UserUseCase.cs
public class UserUseCase : IUseCase, IUserDelegate { public void Start() { Debug.Log("UserUseCase.Start"); } public void Destroy() { Debug.Log("UserUseCase.Destroy"); } public void OnClickUser() { Debug.Log("UserUseCase.OnClickUser"); } }
IUseCase.cs
interface IUseCase { void Start(); void Destroy(); }
IUserDelegate.cs
public interface IUserDelegate { public void OnClickUser(); }