在c#中,如果我从一个未实例化的不同类中调用一个方法,当调用该方法时该类是否实例化了?
本文关键字:一个 实例化 方法 调用 是否 如果 同类 | 更新日期: 2023-09-27 18:19:13
class State
{
public void FalconPunch()
{
Console.Writeline("Punched.")
}
}
class Testy
{
public void TryThis()
{
State.FalconPunch();
}
}
当类Testy中的方法TryThis()调用State.FalconPunch()时,是否将类State实例化(即使是片刻)以执行FalconPunch()方法?
我试图决定是否静态状态是必要的,所有AI代理在我的游戏中使用。它是在移动平台上,所以我试着写优化的头脑。
你不能在没有实例引用的情况下调用FalconPunch
,因为它不是static
。
必须手动创建一个新的实例。
短:new State().FalconPunch()
完成:var s = new State(); s.FalconPunch();
FalconPunch不是静态方法,因此无法编译。为了调用该方法,您必须专门创建一个实例。