《Visual Basic.NET程序设计》 苗国义 课后习题答案 第4章.doc
第4章
1.答:
面向对象的程序设计是软件系统设计和实现的重要方法。这种方法通过增加软件可扩充性和可重用性,来改善并提高程序设计人员的生产能力,以便有效地控制软件维护的复杂性和开销。VisualBasic.NET是一种完全面向对象的编程语言,它支持面向对象编程的3个基本特性:封装、继承和多态。
2.答:
类和对象是利用VisualBasic.NET编程的核心概念。对象是一个属性(数据)集及其操作(行为)集的封装体。在计算机程序中,对象可称为一个“基本程序模块”,因为它包含了数据结构和所提供的相关操作功能。类是一种抽象,实质上定义的是一种对象类型。它描述了属于该类型的所有对象的性质,它将具有相同数据结构(属性)和行为(方法)的对象聚集成一个类。
对象是类的实例,类是对象的定义。
3.答:
命名空间(NameSpace)是组织类的一种机制。在VisualBasic.NET框架中有一个巨大的类库,该类库提供了程序设计中所需要的大部分功能。另外,程序员在开发程序时,也可能需要创建自己使用的类。为了在众多的类中方便地定位到所需要使用的类,在.NET中引入了命名空间的概念。
4.答:
Publicclassbase
Privatename(4)aschar
Privateyearasinteger
Privatemonthasinteger
Privatedateasinteger
Privatebirthplace(50)aschar
Endclass
Publicclassallchild
Inheritsbase
Privateparma(14)aschar
Endclass
Publicclassmen
Inheritsbase
Privateunit(30)aschar
Privatesalaryasinteger
Privatetel(12)aschar
Endclass
Publicclassoldmen
Inheritsbase
Privateunit(30)aschar
Privatesalaryasinteger
Privatetel(12)aschar
Endclass
5.答:
Publicclassbase
Privatenameasstring
Privateschoolasstring
Privatetelasstring
Privatepostcodeasstring
Publicfunctiongetname()asstring
Getname=name
Endfunction
Publicfunctiongetschool()asstring
getschool=school
Endfunction
Publicfunctiongettel()asstring
gettel=tel
Endfunction
Publicfunctiongetpostcode()asstring
getpostcode=postcode
Endfunction
Endclass
6.答:
PublicClassbook
?PublicQuantifyAsInteger
?PublicNameAsString
?PublicCostAsDouble
?PublicOverridableFunctiongetcost()AsDouble
?EndFunction
EndClass
Classtextbook
?Inheritsbook
?PublicpriceAsInteger
?PublicSubNew(ByValpAsInteger,ByValqAsInteger,ByValtextAsString)
?Quantify=q
?price=p*0.8
?Name=text
?p=15
?EndSub
?PublicOverridesFunctiongetcost()AsDouble
?Return(name:Quantify*price)
?EndFunction
EndClass
Classtradebook
?Inheritsbook
?PublicpriceAsInteger
?PublicSubNew(ByValpAsDouble,ByValq1AsDouble,ByValtradeAsString)
?Quantify=q1
?