在类级别上定义对象的引用,并在构造函数中对值进行分类

本文关键字:构造函数 分类 引用 定义 对象 | 更新日期: 2023-09-27 18:28:45

为什么在很多情况下,我看到编码器在类级别定义了一个对象的引用,然后在构造函数中创建它自己的对象(分配它的值)??

public partial class Form1 : Form
{
    Graphics grfx;
    public Form1()
    {
        InitializeComponent();
        grfx = this.CreateGraphics();
    }
}

这样做有什么好处。这是否允许我们从类中的任何方法访问此对象??

在类级别上定义对象的引用,并在构造函数中对值进行分类

grfxForm1的实例变量。它是在类级别上定义的(即在任何方法或构造函数之外),因此类的所有非静态方法都可以访问它

在构造函数中初始化它的一个好处是,代码的其余部分可以依赖于它的设置,从而避免不必要的null检查。在这种情况下,最好将grfx设置为私有和只读,以确保它永远不会在构造函数之外设置:

private readonly Graphics grfx;