




已閱讀5頁(yè),還剩4頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、簡(jiǎn)要回答下列問(wèn)題。(1)舉例說(shuō)明new關(guān)鍵字可用于哪些方面?(2)sealed關(guān)鍵字的作用是什么?什么情況下需要使用sealed關(guān)鍵字?(3)哪些關(guān)鍵字可以用于版本控制?【解答】1)在C#中,new關(guān)鍵字可用作運(yùn)算符或修飾符。作為運(yùn)算符用于在堆上創(chuàng)建對(duì)象和調(diào)用構(gòu)造函數(shù)。作為修飾符用于隱藏基類(lèi)成員的繼承成員。2) 在類(lèi)聲明中使用sealed修飾符可防止其它類(lèi)繼承此類(lèi)。在方法聲明中使用sealed修飾符可防止擴(kuò)充類(lèi)重寫(xiě)此方法。sealed修飾符主要用于防止非有意的派生,但是它還能促使某些運(yùn)行時(shí)優(yōu)化。具體說(shuō)來(lái),由于密封類(lèi)永遠(yuǎn)不會(huì)有任何派生類(lèi),所以對(duì)密封類(lèi)的實(shí)例的虛擬函數(shù)成員的調(diào)用可以轉(zhuǎn)換為非虛擬調(diào)用來(lái)處理。3) override關(guān)鍵字和new關(guān)鍵字均可用于版本控制。在C#中,默認(rèn)情況下方法不是虛擬的。若要使方法成為虛擬方法,必須在基類(lèi)的方法聲明中使用virtual修飾符。然后,派生類(lèi)可以使用override關(guān)鍵字重寫(xiě)基類(lèi)中的虛擬方法,或使用new關(guān)鍵字隱藏基類(lèi)中的虛擬方法。如果override關(guān)鍵字和new關(guān)鍵字均未指定,編譯器將發(fā)出警告,并且派生類(lèi)中的方法將隱藏基類(lèi)中的方法。2、簡(jiǎn)要回答抽象類(lèi)和接口的主要區(qū)別?!窘獯稹砍橄箢?lèi)和接口的一個(gè)主要差別是:類(lèi)可以實(shí)現(xiàn)多個(gè)接口,但僅能從一個(gè)抽象類(lèi)或任何其它類(lèi)型的類(lèi)繼承。3、編寫(xiě)一個(gè)控制臺(tái)應(yīng)用程序,完成下列功能,并回答提出的問(wèn)題。(1)創(chuàng)建一個(gè)類(lèi)A,在構(gòu)造函數(shù)中輸出“A”,再創(chuàng)建一個(gè)類(lèi)B,在構(gòu)造函數(shù)中輸出“B”。(2)從A繼承一個(gè)名為C的新類(lèi),并在C內(nèi)創(chuàng)建一個(gè)成員B。不要為C創(chuàng)建構(gòu)造函數(shù)。(3)在Main方法中創(chuàng)建類(lèi)C的一個(gè)對(duì)象,寫(xiě)出運(yùn)行程序后輸出的結(jié)果。(4)如果在C中也創(chuàng)建一個(gè)構(gòu)造函數(shù)輸出“C”,整個(gè)程序運(yùn)行的結(jié)果又是什么?【解答】using System;public class A public A() Console.WriteLine(A); public class B public B() Console.WriteLine(B); public class C : A B newb = new B();class MainClass public static void Main() C newc = new C(); Console.ReadLine(); 輸出結(jié)果:BA 如果在C中也創(chuàng)建一個(gè)構(gòu)造函數(shù)輸出“C”,即添加:public C()Console.WriteLine(C); 則整個(gè)程序運(yùn)行的結(jié)果為:BAC4、編寫(xiě)一個(gè)控制臺(tái)應(yīng)用程序,完成下列功能,并寫(xiě)出運(yùn)行程序后輸出的結(jié)果。(1)創(chuàng)建一個(gè)類(lèi)A,在A中編寫(xiě)一個(gè)可以被重寫(xiě)的帶int類(lèi)型參數(shù)的方法MyMethod,并在該方法中輸出傳遞的整型值加10后的結(jié)果。(2)再創(chuàng)建一個(gè)類(lèi)B,使其繼承自類(lèi)A,然后重寫(xiě)A中的MyMethod方法,將A中接收的整型值加50,并輸出結(jié)果。(3)在Main方法中分別創(chuàng)建類(lèi)A和類(lèi)B的對(duì)象,并分別調(diào)用MyMethod方法?!窘獯稹縰sing System;public class A public virtual void MyMethod(int num) num += 10; Console.WriteLine(num); public class B : A public override void MyMethod(int num) num += 50; Console.WriteLine(num); class MainClass public static void Main() A newa = new A(); newa.MyMethod(2); B newb = new B(); newb.MyMethod(2); Console.ReadLine(); 輸出結(jié)果:12525、假設(shè)Node類(lèi)的每一個(gè)節(jié)點(diǎn)包括有兩個(gè)字段:m_data(引用節(jié)點(diǎn)的數(shù)據(jù))和m_next(引用鏈接列表中的下一項(xiàng))。這兩個(gè)字段都是由構(gòu)造函數(shù)方法設(shè)置的。該類(lèi)有兩個(gè)功能,第一個(gè)功能是通過(guò)名為Data和Next的只讀屬性訪問(wèn)m_data和m_next字段。第二個(gè)功能是對(duì)System.Object的ToString虛擬方法進(jìn)行重寫(xiě)。試分別用類(lèi)和泛型兩種方法編寫(xiě)程序?qū)崿F(xiàn)上述功能。【解答】using System;class Node Object m_data; Node m_next; public Node(Object data, Node next) m_data = data; m_next = next; / 訪問(wèn)結(jié)點(diǎn)數(shù)據(jù) public Object Data get return m_data; / 訪問(wèn)下一個(gè)結(jié)點(diǎn) public Node Next get return m_next; / 獲取結(jié)點(diǎn)數(shù)據(jù)描述 public override String ToString() return m_data.ToString(); / 鏈表結(jié)點(diǎn)類(lèi)的泛型定義class Node T m_data; Node m_next; public Node(T data, Node next) m_data = data; m_next = next; / 訪問(wèn)結(jié)點(diǎn)數(shù)據(jù) public T Data get return m_data; set m_data = value; / 訪問(wèn)下一個(gè)結(jié)點(diǎn) public Node Next get return m_next; set m_next = value; / 獲取結(jié)點(diǎn)數(shù)據(jù)描述 public override String ToString() return m_data.ToString(); / 使用結(jié)點(diǎn)類(lèi)型或泛型結(jié)點(diǎn)類(lèi)型class LinkedList static void Main(string args) / 創(chuàng)建整數(shù)鏈表 /Node head = new Node(5, null); /head = new Node(10, head); /head = new Node(15, head); /遍歷鏈表求整數(shù)和 /Int32 sum = 0; /for (Node current = head; current != null; / current = current.Next) / / sum += (Int32)current.Data; / / 輸出結(jié)果 /Console.WriteLine(Sum of nodes = 0, sum); / 用泛型創(chuàng)建整數(shù)鏈表 Node head = new Node(5, null); head = new Node(10, head); head = new Node(15, head); / 遍歷求和 Int32 sum = 0; for (Node current = head; current != null; current = current.Next) sum += current.Data; / 輸出 Console.WriteLine(Sum of nodes = 0, sum.ToString(); 1、使用保持連接方式編寫(xiě)程序,計(jì)算各年級(jí)平均成績(jī),并顯示結(jié)果?!窘獯稹縰sing System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.Data.SqlClient;namespace 習(xí)題9_1 public partial class Form1 : Form public Form1() InitializeComponent(); /添加Button按鈕在ListBox中顯示結(jié)果 private void button1_Click(object sender, EventArgs e) listBox1.Items.Add(年級(jí) 平均成績(jī)); string connectionString = Properties.Settings.Default.MyDatabaseConnectionString; /根據(jù)連接字符串創(chuàng)建SqlConnection實(shí)例 SqlConnection conn = new SqlConnection(connectionString); /創(chuàng)建SqlCommand實(shí)例,并設(shè)置SQL語(yǔ)句和使用的連接實(shí)例 SqlCommand cmd = new SqlCommand(); cmd.CommandText = select substring(學(xué)號(hào),1,2) as 年級(jí),avg(成績(jī)) as 平均成績(jī) from MyTable2 group by substring(學(xué)號(hào),1,2); cmd.Connection = conn; try conn.Open(); SqlDataReader r = cmd.ExecuteReader(); while (r.Read() = true) listBox1.Items.Add(string.Format(0級(jí) 1, r0, r1); r.Close(); catch (Exception err) MessageBox.Show(err.Message, 計(jì)算成績(jī)失敗); finally conn.Close(); 2、使用保持連接方式編寫(xiě)程序,查詢(xún)MyTable2中不及格學(xué)生的學(xué)號(hào)、姓名、性別和成績(jī)。并將結(jié)果在ListBox中顯示出來(lái)?!窘獯稹縰sing System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.Data.SqlClient;namespace 習(xí)題9_2 public partial class Form1 : Form public Form1() InitializeComponent(); private void button1_Click(object sender, EventArgs e) listBox1.Items.Add( 學(xué)號(hào) 姓名 性別 成績(jī)); string connectionString = Properties.Settings.Default.MyDatabaseConnectionString; /根據(jù)連接字符串創(chuàng)建SqlConnection實(shí)例 SqlConnection conn = new SqlConnection(connectionString); /創(chuàng)建SqlCommand實(shí)例,并設(shè)置SQL語(yǔ)句和使用的連接實(shí)例 SqlCommand cmd = new SqlCommand(); cmd.CommandText = Select 學(xué)號(hào),姓名,性別, 成績(jī) From MyTable2 Where (成績(jī) 18 , conn); DataSet dataset = new DataSet(); adapter.Fill(dataset, person); dataGridView1.DataSource = dataset.Tablesperson; adapter.Dispose(); catch (Exception err) MessageBox.Show(err.Message); finally conn.Close(); 5、調(diào)用存儲(chǔ)過(guò)程,設(shè)計(jì)程序完成下列功能:任意給出一個(gè)漢字,統(tǒng)計(jì)MyTable2中所有包含該漢字的人數(shù),并顯示統(tǒng)計(jì)結(jié)果?!窘獯稹縰sing System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.Data.SqlClient;namespace 習(xí)題9_5 public partial class Form1 : Form public Form1() InitializeComponent(); private void button1_Click(object sender, EventArgs e) SqlConnection conn = new SqlConnection(Properties.Settings.Default.MyDatabaseConnectionString); SqlCommand cmd = new SqlCommand(); cmd.Connection = conn; /設(shè)置S
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中考?xì)v史總復(fù)習(xí)初中歷史必考120個(gè)重點(diǎn)知識(shí)填空匯編
- 車(chē)隊(duì)運(yùn)輸安全合同協(xié)議
- 車(chē)輛墊資結(jié)清協(xié)議合同
- 小企業(yè)聯(lián)保循環(huán)額度借款合同
- 辦公室保潔服務(wù)合同
- 車(chē)架廢鐵采購(gòu)合同協(xié)議
- 爸媽離婚協(xié)議書(shū)
- 《演講者張華》課件
- 個(gè)人健康保險(xiǎn)代理合同
- 連鎖賓館加盟合同協(xié)議
- 美發(fā)技能鑒定考試模擬題與參考答案解析
- 書(shū)香校園讀書(shū)主題班會(huì) 課件
- 2025年度考研政治馬克思主義政治經(jīng)濟(jì)學(xué)核心考點(diǎn)復(fù)習(xí)匯編
- 2025專(zhuān)利代理師筆試考試題庫(kù)帶答案
- 第3課《校園文化活動(dòng)我參與》教案 海燕版綜合實(shí)踐活動(dòng) 三年級(jí)下冊(cè)
- 域名解析換編碼 課件 2024-2025學(xué)年人教版(2024)初中信息科技七年級(jí)上冊(cè)
- 整形美容醫(yī)院醫(yī)患溝通流程
- 大學(xué)生職業(yè)規(guī)劃大賽《運(yùn)動(dòng)康復(fù)專(zhuān)業(yè)》生涯發(fā)展展示
- 高樓遮光補(bǔ)償協(xié)議書(shū)范本
- 課題申報(bào)書(shū):生成式人工智能賦能高職教學(xué)變革研究
- 2025-2030專(zhuān)用車(chē)產(chǎn)業(yè)規(guī)劃及發(fā)展研究報(bào)告
評(píng)論
0/150
提交評(píng)論