gpt4 book ai didi

c# - 关于构造函数

转载 作者:搜寻专家 更新时间:2023-10-31 08:05:43 25 4
gpt4 key购买 nike

我有一个关于构造函数的问题。我认为构造函数只是我们的便利而不是 setter 方法,对吗?因此,对于一个对象,您认为重要的属性(例如网络表单中的必填字段)作为参数传递给构造函数。

是否有任何标准可以将这么多参数传递给构造函数?请详细说明这些要点以及有关构造函数的任何要点。

编辑:抱歉我问问题的方式。是的,我们用构造函数创建一个对象,我们用 setter 赋值,但我的问题是关于带 setter 的默认构造函数和带显式构造函数之间的比较参数。

最佳答案

不,这不仅仅是一种便利而不是二传手。特别是,构造函数只会被调用一次。使用构造函数参数,您可以创建不可变类型,这些类型在构造时被赋予它们的值——这对于 setter 是不可能的。

大量 参数通常不是一个好主意,无论是构造函数还是普通方法。如果您发现有很多参数,您可能想要创建一个代表所有相关参数的类型 - 那个类型可能有一堆 getter/setter。参见 ProcessStartInfo举个例子。

关于c# - 关于构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2085141/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com