我需要一个在构造函数中初始化后不能更改的属性
像这样:

private const string banknr;

public ClassName(string banknr)
{
    this.banknr = banknr;
    //from now on "banknr" can't be changed something like a final or const
}
但这是行不通的,我真的不明白

最佳答案

这正是 readonly 关键字的作用。

private readonly string banknr;

public ClassName(string banknr)
{
    this.banknr = banknr;
    //from now on "banknr" can't be changed something like a final or const
}

只读变量可以在构造函数中设置,但不能更改。

关于无法更改但需要在构造函数中初始化的C#变量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32766656/

10-10 09:24