1.面向对象程序设计着重于( B)的设计。
A.对象 B.类 C.算法 D.数据
2.面向对象程序设计中,把对象的属性和行为组织在同一个模块内的机制叫做(C )。
A.抽象 B.继承 C.封装 D.多态
3.在面向对象程序设计中,类通过(D )与外界发生关系。
A.对象 B.类 C.消息 D.接口
4.面向对象程序设计中,对象与对象之间的通信机制是(C )。
A.对象 B.类 C.消息 D.接口
7.关于类变量与实例变量,下列说法正确的是( ABCDE)。
A.包中必须包含__init__.py,包中的模块才能被调用。
B.实例变量是与实例对象绑定的变量,只有创建了实例对象后,实例变量才有意义。
C.实例变量是在类方法中定义的,通常是在__init__()方法中定义。
D.实例变量也可以在其他非__init__()方法中定义。
E.实例变量还可以在实例对象创建后,动态的创建。
答案:ABCDE
8.关于属性,下列说法正确的是( ABCD)。
A.数据成员也称为属性,分为公有属性和私有属性。
B.为了不破坏类的封装性,可以采用@property修饰器,来访问私有属性,检查属性。
C.@property装饰器是一个特殊的属性,它负责把一个方法变成属性来调用。
D.Setter该装饰器允许对已用@property装饰的属性(函数)赋值,但是setter装饰器必须在property的后面,且两个被修饰的属性(函数)名称必须保持一致。
答案:ABCD
9.判断:私有成员在类的外部不能直接访问,一般是在类的内部进行访问和操作。通过一种特殊方式“对象名._类名__xxx”也可以在外部程序中访问私有成员,但这会破坏类的封装性,不建议这样做。
答案:对
10.设计一个简单的购房商贷月供计算器类,按照以下公式计算总利息和每月还款金额:
总利息=贷款金额*利率
每月还款金额 = (贷款金额+总利息)/贷款年限
贷款年限不同利率也不同,这里规定只有如下表所示的3种年限、利率。
年限 利率
3年(36个月) 6.03%
5年(60个月) 6.12%
20年(240个月) 4.39%
class LoanCaculator():
def __init__(self, loan, time):
self.loan = loan
if time == "1":
self.time = 3
elif time == "2":
self.time = 5
elif time == "3":
self.time