c# 静态方法不能直接调用非静态成员,请问哪位高手知道如何间接调用非静态成员呢?
4个回答
展开全部
创建一个实例,通过实例访问,只能这样
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
class A
{
public void F()//这是非静态的
{}
}
//调用
A a = new A();
a.F();
{
public void F()//这是非静态的
{}
}
//调用
A a = new A();
a.F();
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一般是通过构造方法来进行
将非静态成员放入构造方法体中,然后静态方法调用构造函数生成一个新的当前对象
public class Test
{
private readonly string _propA;
public string PropA => _propA;
public Test(string propA)
{
this._propA = propA;
}
public static Test SetMessage(string message)
{
return new Test(message);
}
}
将非静态成员放入构造方法体中,然后静态方法调用构造函数生成一个新的当前对象
public class Test
{
private readonly string _propA;
public string PropA => _propA;
public Test(string propA)
{
this._propA = propA;
}
public static Test SetMessage(string message)
{
return new Test(message);
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询