堆栈溢出异常是.NET异常(错误),当可用于执行堆栈的有限内存耗尽时,将引发该异常。这几乎总是由无限递归引起的,无限递归最终导致太多的嵌套方法调用。
尝试设置值时,以下代码将引发堆栈溢出异常。
public String Name
{
get{return Name;}
set{Name = value;}
}
Run Code Online (Sandbox Code Playgroud)
我知道引用存储在堆栈中(此处是其名称),对象存储在Heap(字符串对象)中。这个地方发生了过多的内存使用情况?有人能告诉我幕后发生的事情吗(内部实现细节)?支持领域的必要性是什么?