Please explain to me why this code produces a StackOverflowException
.
There is a mistake in one of the lines as I have shown using comment. I do not however understand why this gives me a StackOverflowException
.
class TimePeriod
{
private double seconds;
public double hour
{
get { return hour / 3600; } // should be : get { return seconds / 3600; }
set { seconds = value * 3600; }
}
}
class Program
{
static void Main()
{
TimePeriod t = new TimePeriod();
t.hour = 5;
System.Console.WriteLine("Time in hours: " + t.hour);
}
}
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…