這是一個使用數據庫的註冊應用程序的一段代碼。因爲我可以說我知道面向對象的基本原理,所以我理解這個代碼除了第一行。 一個對象(reader)如何成爲另一個對象(cmd1)與另一個類(SqlCommand)的方法(ExecuteReader())?我希望我能創建一個對象的唯一方法就是像這樣寫(std :: object class = new class())。 這個被解釋的鏈接也會受到歡迎。這條線是幹什麼的?
using(SqlDataReader reader = cmd1.ExecuteReader())
{
if (reader.Read())
{
reader.Close();
if (textBox4.Text == textBox5.Text)
{
using (SqlCommand cmd = new SqlCommand("UPDATE info SET [email protected] WHERE [email protected] AND [email protected]", conn))
{
cmd.Parameters.AddWithValue("@Password", textBox4.Text);
cmd.Parameters.AddWithValue("@Id", textBox3.Text);
cmd.Parameters.AddWithValue("@Password1", textBox2.Text);
cmd.ExecuteNonQuery();
}
MessageBox.Show("Password has been changed");
}
else
MessageBox.Show("The new password doesn't match the one written in repeat the new password blank space ");
}
else
MessageBox.Show("Wrong Id or Password");
}
你知道方法如何返回一個值,如int或字符串?他們也可以返回對象的實例。 ExecuteReader返回一個'SqlReader'對象的實例。 '使用'塊使用該對象,然後一旦該塊完成,它就擺脫該對象。 – sab669
方法可以返回對象。如果每個返回類型必須是「無效」的,那麼寫一個面向對象的系統是相當困難的。 – David