VisualCNET开发技术复习提纲和模拟练习文档格式.docx
《VisualCNET开发技术复习提纲和模拟练习文档格式.docx》由会员分享,可在线阅读,更多相关《VisualCNET开发技术复习提纲和模拟练习文档格式.docx(15页珍藏版)》请在冰豆网上搜索。
1、类、字段、属性、方法的声明
2、对象的创建;
对象的方法、属性的使用;
3、静态方法、静态属性与实例方法、实例属性的区别
4、构造函数的定义、执行时机
5、字段与局部变量的区别、作用域
6、各种访问修饰符的作用
7、方法调用的参数传递方式
8、属性的定义和使用
结构、索引器
A
第5章高级OOP
1、类的继承、多态性的含义;
如何定义子类,如何定义实现多态性的方法,子类重写父类的方法。
2、virtual、override、new、base、this关键字的使用
3、抽象类、密封类的含义和使用,相关访问权限public或internal(默认)
4、在存在类继承的情况下,构造函数的执行过程
5、接口的声明和实现,相关访问权限public或internal(默认)
6、委托类型的声明;
委托变量的定义和使用
7、事件的的含义
5.5节、5.6节、5.4.2节的具体内容(但事件概念要知道)
第6章窗体、控件
1、窗体
●窗体方法Show()、ShowDialog()的区别;
窗体的Hide(),Close(),Exit()的作用
●创建窗体对象,显示窗体
●窗体的属性:
Text,Font,StartPosition,AcceptButton,CancelButton,MaximzeBox,MinimizeBox
●窗体的事件:
Load
2、控件的基本属性:
Name,Enabled,Font,Text,Visible
3、键盘事件:
KeyDown,KeyPress,KeyUp
4、文本框TextBox
●属性:
Text,MaxLength,Multiline,PasswordChar,SelectedText,SelectionLength,SelectionStart
●方法:
Focus()
●事件:
TextChanged
5、列表框ListBox、组合框ComboBox
Items,SelectedIndex,SelectedItem,Text,Items.Count,Items[index]
Items.Add(选项内容)
Items.Remove(选项内容)
Items.RemoveAt(intindex)
Items.Clear()
SelectedIndexChanged,
TextChanged用于组合框。
在组合框中输入内容时触发
SelectionChangCommitted单击下拉列表选项完成时触发
6、复选框CheckBox,单选按钮RadioButton
Checked:
值为true、false之一
CheckState:
值为CheckState.Checked、CheckState.UnChecked、CheckState.Indeterminate之一
Text
CheckedChanged
7、标签Label
属性:
Text
8、主菜单栏控件menuStrip
Items:
菜单项集合,为ToolStripMenuItem对象的集合
9、菜单项控件ToolStripMenuItem
Text菜单项的显示文字
Click:
单击菜单项时触发
9、快捷菜单控件ContextMenuStrip
10、状态栏控件StatusStrip
●常用的状态栏对象:
ToolStripStatusLabel(用于显示提示信息),其属性Text
6.1.6节、LinkLabel控件、maskedTextBox控件、RichtextBox控件、CheckedListBox控件、6.5.4节、6.6节、6.8节、6.9节
B
第7章文件操作
1、知道Directory类、DirectoryInfo类的用途,两者的区别。
具体内容不考
2、知道File类、FileInfo类的用途,两者的区别。
3、StreamReader类、StreamWriter类的使用,如何利用它们的方法来读写文本文件的编程(P164-165)
7.1节、7.2.2-7.2.4节、7.3.2-7.3.4节、7.4.3节、7.5节
第9章ADO.NET数据库访问编程
1、ADO.NET数据提供程序有哪四种?
分别用于哪些数据库?
它们的命名空间分别是什么?
2、保持连接方式的数据库访问编程基本步骤
3、断开方式的数据库访问编程基本步骤
4、记住连接SQLServer的数据库连接字符串参数的含义(P204)
4、SqlConnection类
ConnectionString:
数据库连接字符串
State:
为ConnectionState.Connecting、ConnectionState.Open、ConnectionState.Closed之一
Open()建立连接
5、SqlCommand类
●创建SqlCommand对象
ExecuteNonQuery()
ExecuteReader()
ExecuteScaler()
●掌握这3个方法的编程(参见例9-2的相关代码)
6、SqlDataAdapter类
●创建SqlDataAdapter对象:
SqlDataAdapteradapter=newSqlDataAdapter("
SELECT语句串或存储过程名"
,连接对象变量)
Fill(数据表对象)
Fill(数据集对象,"
表名"
)
Update(数据集对象或数据表对象)
7、DataSet数据集
Tables:
DataTable对象的集合,访问其某个表对象的代码:
dataset1.Tables["
]
dataset1.Tables[intindex]注:
index>
=0
8、DataTable对象
Rows:
行集
].Rows[n]行集的第n-1行(记录),为DataRow对象
].Rows[n]["
字段名"
]行集的第n-1行的指定字段的值
9、LINQ查询表达式的组成,各子句的作用,简单代码(P245)
P206第3、4点内容、9.4节、9.5节、9.6节、9.7节、9.8.2中各种联接类型P248、9.8.3节、第10章、多线程、重载运算符
编程实例:
1、实验4的第2题
2、实验5的选作题
3、泛型作业(求一维数组的最大元素或最小元素)
4、用级数
,求π的近似值。
要求直到最后一项绝对值<
0.000001为止。
5、例5-7
6、例6-9
7、例9-2
8、第9章习题第1、2题
10、有关用StreamReader、StreamWriter类的方法来读写文本文件内容的编程
《VisualC#.NET开发技术》模拟练习题
一、单项选择题(每小题2分,共20分)
1、C#应用程序的入口方法是()。
A.start()B.init()C.paint()D.Main()
2、执行完代码int[]x=newint[25];
后,下列选项说明正确的是()。
A.x[24]为0B.x[24]未定义C.x[25]为0D.x[0]为空
3、设有下面两个类的定义:
classPerson
{longid;
//身份证号
stringname;
//姓名
}
classStudent:
Person
{intscore;
//入学总分
intgetScore(){
returnscore;
}
问:
Student类和Person类的关系是( )。
A.包含关系B.继承关系
C.关联关系D.无关系,上述类定义有语法错误
4、设x,y均为已定义的类名,下列声明对象x1的语句中正确的是( )。
A.publicxx1=newy();
B.xx1=x();
C.xx1=newx();
D.intxx1;
5、C#语言的类之间的继承关系是()。
A.多重的B.单重的
C.线程的D.不能继承
6、ADO.NET使用()命名空间的类访问SQLServer数据库的数据。
A.System.Data.OleDbB.System.Data.SqlClient
C.System.Xml.SerializationD.System.IO
7.C#窗体程序入口点方法的定义为()。
A.staticvoidMain(){……}
B.voidMain(){……}
C.staticintWinMain(){……}
D.staticintmain(){……}
8.在C#中,使用()语句捕获异常。
A.ifB.while
C.try…catchD.do
9.为了将字符串str="
123456"
转换成整数123456,应该使用()语句。
A.intNum=(int)strB.intNum=str.Parse(int)
C.intNum=str.ToInt()D.intNum=Convert.ToInt32(str)
10.在ADO.NET中,使用DataAdapter对象将数据源数据填充到DataSet对象,应调用下列()方法。
A.DataAdapter对象的Fill方法
B.DataSet对象的Fill方法
C.DataAdapter对象的Update方法
D.DataSet对象的Update方法
1.C#源程序文件的扩展名是______________。
2.将一个整数20赋值给一个Object类型的变量时,会自动地将20转换为Object对象,这一过程称为___________。
3.设arr是一维数组,为了得到其包含的元素个数,可使用它的_________属性。
4.有这样的类定义:
classA2:
A1{……},A1类是A2类的_______。
5.定义抽象类的关键字是__________。
6.为了在派生类中重写基类的同名方法,必须在定义基类的同名方法时,加上__________________关键字。
7.为了获取TextBox控件对象输入的值,需要引用它的__________属性。
8.当列表框的选中项发生改变时,会触发______________________事件。
9.在菜单系统中,为了实现单击菜单项时,执行给该菜单项对象的__________事件添加代码。
10.在SqlConnection对象中,通过它的_______________属性,指定与数据库连接的参数。
三、简答题(每小题5分,共25分)
1.什么是密封类?
2.接口和抽象类有何区别?
3.面向对象程序设计的基本特性有哪些?
4.常用的键盘事件有KeyPress、KeyDown、KeyUp,这三个事件按什么顺序发生?
并指出它们的触发时机。
5.TextBox和RickTextBox控件在使用上有何差别?
四、阅读理解程序,写出程序的输出结果。
(每小题5题,共15分)
1、
classstaticTest{
publicintx=1;
publicstaticinty=1;
}
classProgram
{
staticvoidMain(string[]args)
staticTest.y=staticTest.y+1;
staticTestm=newstaticTest();
staticTestn=newstaticTest();
m.x=m.x+3;
n.x=n.x+5;
Console.WriteLine("
m.x="
+m.x+"
staticTest.y="
+staticTest.y);
n.x="
+n.x+"
2、
classProgram
{
staticvoidsqare(intx){
x=x*x;
staticstringFunArray(intn,refint[]arr,outfloaty)
n=20;
floatsum=0;
arr=newint[4]{1,2,3,4};
for(inti=0;
i<
arr.Length;
i++)
sum=sum+arr[i];
y=sum/4;
return"
调用了方法FunArray()"
;
inta=2,m=10;
int[]b=newint[]{2,4,6};
floatc;
sqare(a);
stringstr=FunArray(m,refb,outc);
a="
+a);
c="
+c);
for(inti=0;
i<
b.Length;
i++)
Console.Write(b[i]+"
"
);
\nc="
Console.WriteLine(str);
3、
classPerson{
internalstringname;
publicPerson(){}
publicPerson(stringname,intage){
this.name=name;
publicvoidPrintPerson(){
name="
+name);
Person{
intage;
publicStudent(stringname,intage){
this.age=age;
publicnewvoidPrintPerson(){
age="
+age);
staticvoidMain(string[]args){
Students=newStudent("
张三"
20);
s.PrintPerson();
Console.Read();
五、编程题(每小题15分,共30分)
有一个SQLServerExpress数据库student,数据库文件存放在D:
\stud\student.mdf,它包含一个成绩表score,其表结构如下。
Score数据表结构
字段名
类型和长度
是否主键
字段含义
id
int
是
自动产生的序号
no
nchar(10)
学号
name
nvarchar(20)
姓名
course
nvarchar(50)
课程名
score
成绩
1、用SqlConnection、SqlCommand、SqldataReader类编程,实现:
当运行窗体Form1时,将score表的name、course、score列的内容显示在窗体的列表框ListBox1控件对象中。
(15分)
2、用SqlConnection、SqlDataAdapter、DataSet、DataTable、DatagridView等组件,实现:
当单击窗体的“显示成绩”按钮(其对象名为buttonDisplay)时,在DatagridView1对象中显示score数据表的所有记录内容。
模拟练习题参考答案
一、单项选择题
1、D2、A3、B4、C5、B
6、B7、A8、C9、D10、A
二、填空题
1、.cs
2、装箱
3、Length
4、父类(或称基类)
5、abstract
6、virtual
7、Text
8、SelectedIndexChanged
9、Click
10、ConnectionString
三、简答题
1.密封类是不能被继承的类。
答:
接口和抽象的区别包括:
(1)接口是由公共的的属性、方法头定义组成的,它们只有声明,没有代码体实现。
而抽象类可以包含抽象方法、抽象属性,以及非抽象方法和非抽象属性。
(2)它们的关键字不同,声明接口的关键字是interface,抽象类定义的关键字是abstract。
(3)声明接口成员时不要用public访问权限,而声明抽象类的抽象成员时需要加上访问权限关键字。
3.面向对象程序设计的基本特性有:
封装、继承、多态。
4.常用的键盘事件有KeyPress、KeyDown、KeyUp,这三个事件按KeyDown、KeyPress、KeyUp的顺序序发生事件。
KeyDown按下键时触发此事件
KeyPress按下键又释放键时触发此事件
KeyUp松开键时触发此事件
TextBox和RickTextBox控件的差别:
TextBox控件只输入不带格式的文本。
而RickTextBox控件可输入带格式的文本,并且提供了有关文本操作的函数。
四、阅读理解程序题
1、结果:
m.x=4staticTest.y=2
n.x=6staticTest.y=2
2、结果:
a=2
c=2.5
1234
调用了方法FunArray()
3、结果:
name=张三
age=20
specialty=计算机系
五、编程题
privatevoidForm1_Load(objectsender,EventArgse)
stringconntionStr=@"
Datasource=.\sqlexpress;
AttachDbFilename=d:
\stud\student.mdf;
"
+
Integratedsecurity=TRUE;
ConnectTimeout=60;
UserInstance=True"
SqlConnectionconn=newSqlConnection(conntionStr);
SqlCommandcmd=newSqlCommand("
select*fromscore"
conn);
Try
conn.Open();
SqlDataReaderdr=cmd.ExecuteReader();
while(dr.Read()==true){
listBox1.Items.Add(string.Format("
{0}{1}{2}"
dr["
name"
],dr["
course"
score"
]));
dr.Close();
catch(SqlExceptionee){
MessageBox.Show(ee.Message,"
操作失败"
finally{
conn.Close();
privatevoidbuttonDisplay_Click(objectsender,EventArgse)
stringconntionStr=@"
+
try
{
SqlDataAdapteradpater=newSqlDataAdapter("
conn);
DataSetds=newDataSet();
adpater.Fill(ds);
dataGridView1.DataSource=ds.Tables[0];
catch(SqlExceptionee)
finally