C#什么会出现未处理的“System.StackOverflowException”类型的异常

classMuslmprove{publicstringSongTitle{get{returnSongTitle;}set{SongTitle=value;}}publ... class Muslmprove
{
public string SongTitle {get{return SongTitle;} set{SongTitle = value;} }
public string Singer
{get { return Singer; } set { Singer = value; } }

public void StarPlayer()
{
Console.WriteLine("千千静听已启动....");
}
public void ChoosingSongs()
{
SongTitle = "千年缘";
Singer = "必然";
Console.WriteLine("歌曲已选择...\n 音乐:" + SongTitle + "\t" + "歌手:" + Singer);
Player();

}
public void Player()
{
Console.WriteLine("开始播放...\n 音乐:" + SongTitle + "\t" + "歌手:" + Singer);
}
}

static void Main(string[] args)
{
Muslmprove musicImprove = new Muslmprove();
musicImprove.StarPlayer();
musicImprove.ChoosingSongs();
}
}
}
展开
 我来答
Jarhf
2012-02-29 · TA获得超过1862个赞
知道小有建树答主
回答量:1736
采纳率:25%
帮助的人:1029万
展开全部
汗啊, 因为 你的属性的get方法是 死循环!!

当然会报堆栈溢出的错误啦

正确写法是:
(1)简写:
public string SongTitle {get;set; }
(2)标准:
private string songTitle;
public string SongTitle
{
get
{ return this.songTitle;}
set
{ this.songTitle = value;}
}
追问
那要怎么改  才能运行啊.....
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式