Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用对象和bulkey方法传递属性是否有效?_C#_Oop - Fatal编程技术网

C# 使用对象和bulkey方法传递属性是否有效?

C# 使用对象和bulkey方法传递属性是否有效?,c#,oop,C#,Oop,我是OOP新手,所以这可能是一个愚蠢的问题 当我创建一个包含属性和大量方法的类(C#,ASP.NET)时,如果我创建一个对象只是为了从一个层传递到另一个层(比如从表示到业务逻辑),那么用大量方法传递对象不是一种开销吗 请解释这通常是如何实现的???传递对象的开销并不取决于方法的数量 传递具有许多字段的值类型(C#中的结构)会带来成本,可能您对此感到困惑。开销不取决于方法的数量,而是来自方法之间传递的参数数量 选中此选项可能有助于优化代码类是一个类,因此不必担心传递参数,它不取决于方法的数量。这是

我是OOP新手,所以这可能是一个愚蠢的问题

当我创建一个包含属性和大量方法的类(C#,ASP.NET)时,如果我创建一个对象只是为了从一个层传递到另一个层(比如从表示到业务逻辑),那么用大量方法传递对象不是一种开销吗


请解释这通常是如何实现的???

传递对象的开销并不取决于方法的数量


传递具有许多字段的值类型(C#中的
结构)会带来成本,可能您对此感到困惑。

开销不取决于方法的数量,而是来自方法之间传递的参数数量


选中此选项可能有助于优化代码

类是一个类,因此不必担心传递参数,它不取决于方法的数量。

这是否意味着当我创建一个对象(在层之间传递)时,它不会在内存中创建一个遵循所有方法(代码)的对象?这是正确的。对于相同类型的所有对象,所有方法实现只在内存中存在一次。运行库知道可以对什么类型的对象调用哪个方法。对于
virtual
函数,对于相同类型的所有对象,都有一个共享的函数指针表。对于大多数静态类型语言(如java C++)来说,这是正确的。