class Program
    {
        static void Main(string[] args)
        {       
            //DateTime dt = Convert.ToDateTime("1990-12-08");//或者1990/12/08
            //UserInformation Uif = new UserInformation(01,"liu",dt);
            //Uif.UpdateAge();
            //Uif.Say(" 我来了!");
            //Console.ReadLine();
        }
}  
  class UserInformation
    {
        public UserInformation(int id, string username, DateTime birthday)
        {
            this.id = id;
            this.username = username;
            this.birthday = birthday;
        }
        private int id;
        private string username;
        private DateTime birthday;
        public int ID
        {
            set { id = value; }
            get { return id; }
        }
        public string UserName
        {
            set { username = value; }
            get { return username; }
        }
        public DateTime Birthday
        {
            set { birthday = value; }
            get { return birthday; }
        }        public int Age = 0;
        public void UpdateAge()
        {
            Age = 1 + Int32.Parse(DateTime.Now.ToString("yyyy")) - Int32.Parse(birthday.ToString().Substring(0, 4));//birthday.Year
        }
        public string Say(string word)
        {
            Console.WriteLine("学号:" + id + " 姓名:" + username + " 年龄:" + Age + word);
            return word;
        }
}方法2
 class Program
    {
        static void Main(string[] args)
        { 
            int id = 0;
            string name = "liu";
            DateTime dt = Convert.ToDateTime("1990-12-08");//或者1990/12/08
          
            UserInformation Uif = new UserInformation() { ID = id, UserName = name, Birthday = dt }; 
            Uif.UpdateAge();
            Console.WriteLine(Uif.Say("我老了"));
            Console.ReadLine();
        }
    }
  class UserInformation
    {
        public int ID { get; set; }
        
        public string UserName { get; set; }
      
        public DateTime Birthday { get; set; }
        
        public int Age=0 ;
        public void UpdateAge()
        {
            Age = 1 + Int32.Parse(DateTime.Now.ToString("yyyy")) - Birthday.Year ;
            //Age = 1 + 2012 - Birthday.Year;
        }
        public string Say(string word)
        {
            string s = String.Format("学号:{0} 姓名:{1} 年龄:{2} Says:{3}", ID,UserName,Age ,word);
            //Console.WriteLine("学号:" + ID + " 姓名:" + UserName + " 年龄:" + Age + word);
            return s;
        }
    }

解决方案 »

  1.   

    UserInformation Uif = new UserInformation() { ID = id, UserName = name, Birthday = dt }; 
    这个和
    UserInformation Uif = new UserInformation();
    Uif.ID = id;
    Uif.UserName = name;
    Uif.Birthday = dt;
    是一样的。至于跟在构造函数赋值有什么区别,我相信你应该知道
      

  2.   

    无区别只不是一个是显示声明private字段,一个是由frame帮你生成private字段