目录
(2)为二次方程式ax^2+bx+c=0 设计一个名为Equation的类,这个类包括:
(3)设计一个描述自由落体运动的类,要求能获得任意时刻的速度及位移,并进行测试。已知重力加速度为9.8m/s^2。
1.选择题:
1.A 2.A 3.D 4.C 5.D 6.A 7.C 8.B 9.C 10.D
部分题的解析:
6.重写不是面向编程的基本特征之一,重写通常是子类可以重写父类的方法以改变其行为,是继承的一部分
8.类方法:@classmethod
静态方法:@staticmethod
10.这段代码有两个用test命名的函数,在python中,方法的重载并不像其他语言那样直接支持,因为python会覆盖先前定义的同名方法,所以只有最后一个定义的test方法会被保留,而前一个会被覆盖,在python中,self是用来指代当前对象实例的参数,它需要显式地传递给每个类的方法。所以在定义类的方法时,self参数时必须的,不能省略,在定义类方法是,self时第一个参数,它表示当前对象实例的引用。当你调用类的方法时,python会自动将当前对象实例作为第一个参数传递给该方法,因此你在方法内部可以通过self来访问该对象的属性和方法
2.简答题:
(1)什么是对象?什么是类?类与对象的关系是什么?
对象:对应客观世界的事物 类:具有相同或相似性质的对象的抽象就是类
类与对象的关系:对象的抽象就是类,类的具体化就是对象。
(2)面向对象语言有哪三个特性?
1.封装性 2.继承性 3多态性
(3)什么是面向对象编程的继承性?有什么优点?
继承性:描述类之间的关系,在这种关系中,一个类共享了一个或多个其他类定义的数据和操作
优点:增强了代码的复用性,提高了开发效率而且为程序的修改补充提供了便利。
(4)类变量与成员变量的区别是什么?
类变量:
-
类变量是定义在类中,但在所有实例之外的变量。它们属于整个类,而不属于类的特定实例。
-
类变量可以通过类名直接访问,也可以通过类的任何一个实例来访问。所有该类的实例都共享同一个类变量的值。
-
类变量通常用于表示该类的特性或共享的状态,比如全局计算器、常量值等。
成员变量:
成员变量是定义在类中,但在方法中使用self关键字声明的变量。每个实例都有自己的一组成员变量,它们属于实例。
成员变量在类的每个实例之间是独立的,每个实例可以有不同的成员变量。
成员变量通常用于表示实例的特定状态或属性
区别:类变量是属于整个类的,成员变量是属于类的实例的,类变量在整个类中共享,而成员变量则是每个实例独有的。
(5)构造方法和析构方法名字都是什么?
构造方法的名字: __init__() 析构方法的名字: __del__()
(6)构造方法的作用是什么?它与成员方法有什么不同?
构造方法的作用:一般用于为对象数据成员设置初始值或进行其他必要的初始化工作,如果未定义构造方法,python将提供一个默认的构造方法。
不同:构造方法用于初始化对象的状态,在创建对象时自动调用;而成员方法则是定义类的行为或操作的