我是 OOP 的初学者。昨天我试图阅读一些 mvvm/wpf 示例,当然我遇到了麻烦......我在理解下面的一些代码时遇到了一些问题:
{
class Person
{
public string FirstName { get; set; }
public string LastName { get; set; }
public string Addres { get; set; }
}
这只是普通的 Person 类,这里没有什么不寻常的。问题是我无法理解下面的代码:
private void SayHi_Click(object sender, RoutedEventArgs e)
{
Person person = new Person
{
FirstName=FirstName.Text,
LastName=LastName.Text,
Addres=Address.Text
};
我不明白的部分是:
Person person = new Person
{
FirstName=FirstName.Text,
LastName=LastName.Text,
Addres=Address.Text
};
我不确定这到底是什么。我认为每个新对象都应该像这样初始化:Class class = new Class();。为什么“新人”后面没有()?我们用 {} 代替 ()。我知道我们可以使用默认的、参数化的、静态的和私有的构造器。有人可以向我解释一下吗?CodeProject 的以下教程中的类似情况:
http://www.codeproject.com/Articles/165368/WPF-MVVM-Quick-Start-Tutorial
我们有一个歌曲班
public class Song
{
#region Members
string _artistName;
string _songTitle;
#endregion
#region Properties
/// The artist name.
public string ArtistName
{
get { return _artistName; }
set { _artistName = value; }
}
/// The song title.
public string SongTitle
{
get { return _songTitle; }
set { _songTitle = value; }
}
#endregion
}
我们当然有这个类的视图模型:
public class SongViewModel
{
Song _song;
public Song Song
{
get
{
return _song;
}
set
{
_song = value;
}
}
public string ArtistName
{
get { return Song.ArtistName; }
set { Song.ArtistName = value; }
}
}
再说一次,这部分代码是我无法理解的:
public class SongViewModel
{
Song _song;
public Song Song
这是什么“宋_song;” 是?这是宋课的对象?而且这个属性“宋歌”也很诡异……大概是我见识少