面向对象程序设计VB.docx

上传人:b****4 文档编号:27494371 上传时间:2023-07-02 格式:DOCX 页数:32 大小:95.80KB
下载 相关 举报
面向对象程序设计VB.docx_第1页
第1页 / 共32页
面向对象程序设计VB.docx_第2页
第2页 / 共32页
面向对象程序设计VB.docx_第3页
第3页 / 共32页
面向对象程序设计VB.docx_第4页
第4页 / 共32页
面向对象程序设计VB.docx_第5页
第5页 / 共32页
点击查看更多>>
下载资源
资源描述

面向对象程序设计VB.docx

《面向对象程序设计VB.docx》由会员分享,可在线阅读,更多相关《面向对象程序设计VB.docx(32页珍藏版)》请在冰豆网上搜索。

面向对象程序设计VB.docx

面向对象程序设计VB

江西财经大学考试试卷

试卷代码:

03694A卷授课课时:

80

课程名称:

面向对象程序设计(VB)适用对象:

选课班

一、填空题(每空1分,共16分)

1.构造函数和析构函数的意义分别是和。

2.命令窗口用于在集成开发环境中发出命令或调试和计算表达式,它有和两种模式。

3.ReDim语句重定义数组大小时,缺省情况下原数组中的存储的数据会丢失,但可以使用关键字来保证原数组中的数据能保留下来。

4.CLR的中文含义是。

5.为了方便用户操作,VS.NET系统在FileDialog的基础上,系统已派生了和文件对话框类。

6.过程为应用程序的启动点,也就是运行代码时最优先访问的函数。

7.语句允许用户直接使用在其他命名空间中定义的类及类型,而无需使用限定引用。

8.窗体是继承.NET类库中的类。

9.类提供访问文件的方法,包括标准输入、输出和错误设备。

10.要进行二进制文件存取,必须创建与对象。

11.在任何图形绘制之前,一定要先用类创建一个对象。

12.对象是DataSet对象和数据源之间的桥梁。

二、单项选择题(从下列各题四个备选答案中选出一个正确答案,并将其代号写在答题纸相应位置处。

答案错选或未选者,该题不得分。

每小题2分,共16分。

1.以下关于静态成员正确的说法是

A.静态成员可以不用Static修饰符修饰

B.静态成员只能用类名访问

C.静态成员和非静态成员不能同时在类中定义

D.静态成员可以被类的实例调用

2.VB.NET的项目文件是以扩展名来保存。

A..sln

B..vb

C..vbproj

D..sou

3.在类视图窗口以结构显示当前项目中的所有类。

A.树状结构

B.下拉列表

C.菜单

D.表

4.以下不是数据提供程序所提供的四个核心对象。

A.Connection

B.DataReader

C.Parser

D.DataAdapter

5.有关继承下列说法不正确的是

A.所有类缺省都是可继承的,除非在类定义时使用NotInheritable关键字修饰。

B.在VB.NET中,一个类的基类可能有多个。

C.为了防止基类中需要封装保密的成员在派生类中被泄露出来,派生类定义的访问权限必须比其基类更为严格或者至少与之相同。

D.在VisaulBasic.NET中,一个类的基类只能有一个。

6.在VB.NET中,关于构造函数的说法,下列说法不正确的是

A.可以指定构造函数的返回值

B.构造函数可以重载

C.构造函数的过程可以带有参数

D.构造函数的过程名一定是New

7.菜单控件支持事件。

A.Click

B.MouseDown

C.KeyPress

D.Leave

8.Err对象的属性返回了错误号

A.Number

B.Source

C.Description

D.HlepContext

三、阅读程序,根据要求回答问题。

(每小题每5分,共20分)

1.指出以下文件操作程序代码的功能,并画出Windows窗体的界面图。

PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.Click

OpenFileDialog1.Filter="文本文件(*.txt)|*.txt|RTF格式文件(*.RTF)|*.RTF"

OpenFileDialog1.FilterIndex=1

OpenFileDialog1.Title="打开文件"

OpenFileDialog1.InitialDirectory=Application.StartupPath

OpenFileDialog1.RestoreDirectory=True

OpenFileDialog1.ShowDialog()

Fname=OpenFileDialog1.FileName

If(Fname<>"")Then

If(OpenFileDialog1.FilterIndex=1)Then

RichTextBox1.LoadFile(Fname,RichTextBoxStreamType.PlainText)

Else

RichTextBox1.LoadFile(Fname,RichTextBoxStreamType.RichText)

EndIf

StatusBar1.Panels(0).Text=“读状态”

StatusBar1.Panels

(1).Text=“未保存”

EndIf

EndSub

PrivateSubButton3_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton3.Click

SaveFileDialog1.Filter="文本文件(*.txt)|*.txt|RTF格式文件(*.RTF)|*.RTF"

SaveFileDialog1.FilterIndex=1

SaveFileDialog1.Title="保存文件"

SaveFileDialog1.InitialDirectory=Application.StartupPath

SaveFileDialog1.RestoreDirectory=True

SaveFileDialog1.ShowDialog()

Fname=SaveFileDialog1.FileName

If(Fname<>"")Then

If(OpenFileDialog1.FilterIndex=1)Then

RichTextBox1.SaveFile(Fname,RichTextBoxStreamType.PlainText)

Else

RichTextBox1.SaveFile(Fname,RichTextBoxStreamType.RichText)

EndIf

StatusBar1.Panels(0).Text="写状态"

StatusBar1.Panels

(1).Text="已保存"

EndIf

EndSub

PrivateSubTimer1_Tick(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesTimer1.Tick

StatusBar1.Panels

(2).Text=DateTime.Now.ToString("T")

EndSub

PrivateSubRichTextBox1_TextChanged(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesRichTextBox1.TextChanged

RichTextBox1.Modified=false

IfRichTextBox1.ModifiedThen

StatusBar1.Panels

(1).Text="未保存"

Else

StatusBar1.Panels

(1).Text=“已保存”

RichTextBox1.Modified=false

EndIf

EndSub

2.指出下列程序的运行结果,并说明该程序的功能。

ModuleModule1

WithEventsfrm1AsNewForm()

Dimlabel1AsNewLabel()

SubMain()

label1.Size=NewSize(80,20)

label1.BackColor=Color.Yellow

label1.TextAlign=ContentAlignment.MiddleCenter

label1.BorderStyle=BorderStyle.Fixed3D

frm1.Controls.AddRange(NewSystem.Windows.Forms.Control(){label1})

Application.Run(frm1)

EndSub

PublicSubfrm1_MouseMove(ByValsenderAsObject,ByValeAsSystem.Windows.Forms.MouseEventArgs)Handlesfrm1.MouseMove

label1.Location=NewPoint(e.X,e.Y-15)

label1.Text="X="&e.X&",Y="&e.Y

EndSub

EndModule

3.分析下列程序的运行结果,说明该程序的功能。

PublicClasslogin

InheritsSystem.Windows.Forms.Form

#Region"Windows窗体设计器生成的Code"

‘系统自动创建的程序,为了节省篇幅,在此处省略。

#EndRegion

DimmymdimainAsMainMDI

PrivateSubbtnOk_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesbtnOk.Click

IftxtUserName.Text.Trim=""Then

showMsg("用户名不许为空!

")

txtUserName.Focus()

ExitSub

EndIf

IftxtPassWord.Text.Trim=""Then

showMsg("密码不许为空!

")

txtPassWord.Focus()

ExitSub

EndIf

DimiAsInteger

DimstrsqlAsString

DimmydatasetAsNewDataSet

DimmyTableAsDataTable

DimunameAsString

DimpswAsString

uname=Trim(txtUserName.Text)

psw=Trim(txtPassWord.Text)

Try

strsql="SELECT*FROMOperatorWHEREName='"+uname+"'andPassword='"+psw+"'"

mydataset=executeSelectQuery(strsql,"manager")

strsql="SELECT*FROMAuthorityWHEREName='"&uname&"'"

myTable=executeSelectQuerygettable(strsql)

IfmydatasetIsNothingThen

showMsg("用户名或密码错误!

",MsgBoxStyle.Exclamation)

Return

EndIf

IfmyTableIsNothingThen

showMsg("此用户无任何权限!

",MsgBoxStyle.Exclamation)

Return

EndIf

CatchexAsException

ExitSub

EndTry

Ifmydataset.Tables("manager").Rows.Count=0Then

showMsg("用户名或密码错误!

",MsgBoxStyle.Exclamation)

Else

GlobalVariable.PERMISSION=NewArrayList

Fori=0TomyTable.Rows.Count-1

GlobalVariable.PERMISSION.Add(myTable.Rows(i).Item("Permission")&"")

Next

Me.Close()

EndIf

EndSub

PrivateSublogin_Closing(ByValsenderAsObject,ByValeAsSystem.ComponentModel.CancelEventArgs)HandlesMyBase.Closing

mymdimain.setpower()

EndSub

PrivateSublogin_Load(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesMyBase.Load

PERMISSION=NewArrayList

mymdimain.setpower()

EndSub

PrivateSubbtnExit_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesbtnExit.Click

Me.Close()

EndSub

EndClass

其中:

setpower()为权限设置方法,在此省略了。

4.指出下列程序的运行结果,并说明该程序中使用了面向对象技术中的一个什么概念,它实现了一个什么功能。

PublicClassShape

PublicOverridableFunctionGetArea()AsDouble

Return(0)

EndFunction

PublicOverridableFunctionGetPerim()AsDouble

Return(0)

EndFunction

EndClass

ClassRectangle

InheritsShape

PublicWidthAsDouble

PublicLengthAsDouble

PublicSubNew(ByValaAsDouble,ByValbAsDouble)

Width=a:

Length=b

EndSub

PublicOverridesFunctionGetArea()AsDouble

Return(Width*Length)

EndFunction

PublicOverridesFunctionGetPerim()AsDouble

Return(2*(Length+Width))

EndFunction

EndClass

ClassCircle

InheritsShape

PublicRadiusAsDouble

PublicSubNew(ByValrAsDouble)

Radius=r

EndSub

PublicOverridesFunctionGetArea()AsDouble

Return(Math.PI*Radius*Radius)

EndFunction

PublicOverridesFunctionGetPerim()AsDouble

Return(2*Math.PI*Radius)

EndFunction

EndClass

PublicClassForm1

InheritsSystem.Windows.Forms.Form

#Region"WindowsFormDesignergeneratedcode"

‘系统自动创建的程序,为了节省篇幅,在此处省略。

#EndRegion

PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.Click

Dima,bAsDouble

a=Val(TextBox1.Text)

b=Val(TextBox2.Text)

DimRectAsNewRectangle(a,b)

TextBox3.Text=CStr(Rect.GetPerim())

TextBox4.Text=CStr(Rect.GetArea())

EndSub

PrivateSubButton2_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton2.Click

DimrAsDouble

r=Val(TextBox5.Text)

DimCirAsNewCircle(r)

TextBox6.Text=CStr(Cir.GetPerim())

TextBox7.Text=CStr(Cir.GetArea())

EndSub

EndClass

四、问答题(第1小题8分,第2小题10分,共20分)

1.简述.NET的特点。

2.举例说明面向对象语言支持三种特性的应用。

五、程序设计题(第1小题8分,第2、3小题各10分,共28分)

1.编写一个关于自己的结构和类的程序。

2.编写一个我最喜爱的国产轿车评选程序。

程序设计界面图5-1,程序运行界面如图5-2所示。

程序运行时,在ListBox1列表框中显示所有参评轿车列表,单击按钮【>】用户可以从中选择一量轿车,对于选完后不满意的轿车,还可以通过单击按钮【<】,移回到ListBox1列表框中,还可选中ListBox1列表中所有轿车(通过单击按钮【>>】实现)或将ListBox2框中所全的项目全部移回至ListBox1框中(通过单击按钮【<<】实现)。

图5-1程序设计界面5-2程序运行界面

3.请按照以下(关于信息学院部分专业学生必修学习课程的情况)图形的分析,制定每一个类所需要的数据成员与成员函数,编写一个完整的程序,实现在控制台方式下,按给出的学生实例值(例如:

王行江,,1985.10.25,计算机,打球;

钟明华,,1986.2.16,信管,跳舞)显示信管专业与计算机专业学生相关类的成员值。

Student(属性:

Name、No、BirthDate、Profession、Love)

(方法:

English、Cprogram)

InfoStudenCompStuden

 

VB.NETProgramElectroniccommerceC++ProgramNumericallogic

 

 

江西财经大学末考试试卷

试卷代码:

03694B卷授课课时:

80

课程名称:

面向对象程序设计(VB)适用对象:

选课班

二、填空题(每空1分,共16分)

1.面向对象技术的主要特性表现在具有抽象化、、和。

2.接口是对类的可用、和等做一个规范描述,并且可以用它作为一种类型来使用,但是它并不真正实现代码,仅仅是一个描述。

3.VisualBasic.NET默认的析构函数是。

4.在VB.NET中,你可以通过类来操作文件夹和驱动器。

5.在VB.NET中,编译时的多态性是通过实现,运行时的多态性是通过继承和来实现的。

6.说明以下在类所声明变量的差异。

SharediAsInteger

ProtectedxAsSingle

PublicyAsSingle

7.要在已知的项目中添加类或Windows窗体,可以通过选取菜单中的来实现。

8.要连接SQLServer7.0以上版本的数据库时,需要使用对象。

9.在System.Drawing命名空间中,类是绘制图形的最核心的类。

六、单项选择题(从下列各题四个备选答案中选出一个正确答案,并将其代号写在答题纸相应位置处。

答案错选或未选者,该题不得分。

每小题2分,共16分。

1.在使用MsgBox函数时,一定要给的参数是。

A.title

B.prompt

C、button

D.以上皆非

2.当参数指定为传址调用时,调用者可以利用下面的符号括住参数,强迫该参数的传递变成传值调用。

A、<>

B.()

C.[]

D.“”

3.类中利用Dim所声明的变量为

A.Private

B.Public

C.Protected

D.Shared

4.要让继承的类也能使用的变量,必须以关键字声明。

A.Private

B.Dim

C.Protected

D.Used

5.当类中的函数以MustOverride声明时,类必须以关键字声明。

A.NoInheritable

B.Overridable

C.MustInherit

D.Overrides

6.模块文件存储时,它的扩展名是。

A..mdl

B..mod

C..vb

D..abs

7.在StreamReader类中共定义了四种读取方式,其中从当前流中读取一行字符并将数据作为字符串返回的是

A.Read

B.ReadLine

C.ReadBlock

D.ReadtoEnd

8.以下的级别可以使用Static语句

A.过程级

B.模块级

C.类级

D.命名空间

七、阅读程序,根据要求回答问题。

(每小题每5分,共20分)

1.分析下列程序的运行结果,说明该程序的功能,并画出Windows窗体界面。

ImportsSystem.Windows.Forms

ImportsSystem.Drawing

ModuleModule1

Dimfrm1AsNewForm()

DimMdifrm1AsNewForm()

DimMdifrm2AsNewForm()

WithEventsbtn1AsNewButton

SubMain()

frm1.IsMdiContainer=True

btn1.Size=NewSize(0,40)

btn1.Text="子窗体水平排列"

btn1.Dock=DockStyle.Top

frm1.Controls.AddRange(NewSystem.Windows.Forms.Control(){btn1})

Mdifrm1.MdiParent=frm1

Mdifrm2.Text="MDI子窗体二"

Mdifrm2.MdiPar

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 理化生

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1