一.单选题(共5题,50.0分)
1 .下列说法中不正确的是( )。
A、
类是对象的模板,而对象是类的实例
B、
实例属性名如果以__开头,就变成了一个私有变量
C、
只有在类的内部才可以访问类的私有变量,外部不能访问
D、
在Python中,一个子类只能有一个父类
正确答案: D
2 下列选项中不是面向对象程序设计基本特征的是( )。
A、
继承
B、
多态
C、
可维护性
D、
封装
正确答案: C
3 在方法定义中,访问实例属性x的格式是( )
A、
x
B、
self.x
C、
self[x]
D、
self.getx()
正确答案: B
4 下列程序的执行结果是( )。
class Point:
x=10
y=10
def __init__(self,x,y):
self.x=x
self.y=y
pt=Point(20,20)
print(pt.x,pt.y)
A、
10 20
B、
20 10
C、
10 10
D、
20 20
正确答案: D
5 下列程序的执行结果是( )。
class C():
f=10
class C1©:
pass
print(C.f,C1.f)
A、
10 10
B、
10 pass
C、
pass 10
D、
运行出错
正确答案: A
二.填空题(共5题,50.0分)
1. Python类的构造方法是
正确答案:
第一空:
init;init()
2 可以从现有的类来定义新的类,这称为类的继承,新的类称为 ___,而原来的类称为基类、父类或超类
正确答案:
第一空:
子类
3 下列程序的运行结果为 。 class Account: def init(self,id): self.id=id id=888 acc=Account(100) print(acc.id)
正确答案:
第一空:
100
4 下列程序的运行结果为 。 class parent: def init(self,param): self.v1=param class child(parent): def init(self,param): parent.init(self,param) self.v2=param obj=child(100) print(obj.v1,obj.v2)
正确答案:
第一空:
100 100
5 下列程序的运行结果为 。 ## class account: def init(self,id,balance): self.id=id self.balance=balance def deposit(self,amount): self.balance+=amount def withdraw(self,amount): self.balance-=amount acc1=account(‘1234’,100) acc1.deposit(500) acc1.withdraw(200) print(acc1.balance)
正确答案:
第一空:
400