C# 理解动态内存关键字New

C# 理解动态内存关键字New,c#,new-operator,C#,New Operator,我正在阅读新操作符的文档,它用于在堆上创建新对象和调用构造函数。这个定义在外行的术语中是什么意思?因为我是一个年轻的程序员,如果能用非常简单的术语或短语来解释,我将不胜感激 我遇到的新代码行的特殊代码是从一个互联网源代码中完成c#教程的示例 var newNumber = new StringBuilder(); 因此,我要求提供一些简单的例子,分解新运算符的内容,如果您能告诉我这行代码的作用,也会很有帮助 它创建一个对象的新实例,并将其放在堆上。这样做还将启动对象的构造函数,您可以根据自己

我正在阅读新操作符的文档,它用于在堆上创建新对象和调用构造函数。这个定义在外行的术语中是什么意思?因为我是一个年轻的程序员,如果能用非常简单的术语或短语来解释,我将不胜感激

我遇到的新代码行的特殊代码是从一个互联网源代码中完成c#教程的示例

var newNumber = new StringBuilder(); 

因此,我要求提供一些简单的例子,分解新运算符的内容,如果您能告诉我这行代码的作用,也会很有帮助

它创建一个对象的新实例,并将其放在堆上。这样做还将启动对象的构造函数,您可以根据自己的喜好对其进行修改。例如,假设我有一个类Person,我可以创建构造函数:

 public Person(String name)
 {
    // do something with name
 }
这将让实现Person的其他类知道,当从Person创建新实例时,它们需要提供一个字符串作为参数

然后他们会打电话

 var newPerson = new Person("John");
new关键字基本上创建了您在别处定义的“blueprint”的一个具体实例。因此,在上面的代码中,newPerson将是一个实际的对象,它基于“Person”类中的蓝图

使用dynamic意味着您不必自己分配堆上的对象。这是委托的,所以您不必担心实际对象在内存中的位置。(与其他一些编程语言不同,它们提供了更多的控制)


这意味着,作为一名程序员,你不知道在哪里可以找到你的对象,但你不在乎,只要你能使用它。:)

它创建一个对象的新实例,并将其放在堆上。这样做还将启动对象的构造函数,您可以根据自己的喜好对其进行修改。例如,假设我有一个类Person,我可以创建构造函数:

 public Person(String name)
 {
    // do something with name
 }
这将让实现Person的其他类知道,当从Person创建新实例时,它们需要提供一个字符串作为参数

然后他们会打电话

 var newPerson = new Person("John");
new关键字基本上创建了您在别处定义的“blueprint”的一个具体实例。因此,在上面的代码中,newPerson将是一个实际的对象,它基于“Person”类中的蓝图

使用dynamic意味着您不必自己分配堆上的对象。这是委托的,所以您不必担心实际对象在内存中的位置。(与其他一些编程语言不同,它们提供了更多的控制)


这意味着,作为一名程序员,你不知道在哪里可以找到你的对象,但你不在乎,只要你能使用它。:)

想象一下我们在谈论三明治。我喜欢潜水艇;你喜欢面包卷。我们在谈论一些我们知道存在但不在我们面前的东西。我们说的是那种三明治

当然,在所有这些谈话之后,我们饿了,去了一家熟食店。我说我喜欢潜水艇,想要一种新的三明治——一种我能拿着、能看见、能吃的三明治


new
对类型进行操作,并返回该类型的全新实例,与所有其他实例不同。就像我的三明治一样。

想象一下我们在谈论三明治。我喜欢潜水艇;你喜欢面包卷。我们在谈论一些我们知道存在但不在我们面前的东西。我们说的是那种三明治

当然,在所有这些谈话之后,我们饿了,去了一家熟食店。我说我喜欢潜水艇,想要一种新的三明治——一种我能拿着、能看见、能吃的三明治


new
对类型进行操作,并返回该类型的全新实例,与所有其他实例不同。就像我的三明治一样。

每当另一个对象想要用于person的对象时,他们必须创建它的新实例?如果它是一个要使用多次的对象,当然你会将它保存在一个变量中。特别是类的一个变量。如果该对象可以被其他对象使用,则将该变量设置为公共变量。这是一个非常简短和简单的解释。你应该开始阅读一本编程书,以获得正确的理解!每当另一个对象想要用于person的对象时,他们都必须创建它的新实例?如果它是一个要使用多次的对象,当然,您会将它保存在一个变量中。特别是类的一个变量。如果该对象可以被其他对象使用,则将该变量设置为公共变量。这是一个非常简短和简单的解释。你应该开始阅读一本编程书,以获得正确的理解!