小甲鱼第36课课后练习
0. 对象中的属性和方法,在编程中实际是什么?
答:变量(属性)和函数(方法)。
1. 类和对象是什么关系呢?
答:类和对象的关系就如同模具和用这个模具制作出的物品之间的关系。一个类为它的全部对象给出了一个统一的定义,而他的每个对象则是符合这种定义的一个实体,因此类和对象的关系就是抽象和具体的关系。类的属性对象应该尽可能的抽象,因为这样更符合面向对象的思维。
类名约定以大写字母开头
2. 请用一句话概括面向对象的几个特征?
封装 | 对外部隐藏对象的工作细节 |
继承 | 子类自动共享父类之间数据和方法的机制 |
多态 | 可以对不同类的对象调用相同的方法,产生不同的结果 |
函数和方法有什么区别?
答:方法跟函数其实几乎完全一样,但有一点区别是方法默认有一个 self 参数。
3. 按照以下提示尝试定义一个 Person 类并生成类实例对象。KGOJg
属性:姓名(默认姓名为“小甲鱼”)
方法:打印姓名
提示:方法中对属性的引用形式需加上 self,如 self.name
class Person: name = "小甲鱼" def printname(self): print(self.name)
4. 按照以下提示尝试定义一个矩形类并生成类实例对象。Hb8|-FmE&
属性:长和宽版权属于:bbs.fishc.com
方法:设置长和宽 -> setRect(self),获得长和宽 -> getRect(self),获得面积 -> getArea(self))nua=4L
提示:方法中对属性的引用形式需加上 self,如 self.width
class Person: length = 5 width = 4 def setRect(self): print("请输入矩形的长和宽") self.length = float(input("长:")) self.width = float(input("宽:")) def getRect(self): print("这个长方形的长是: %f, 宽是 %f" %(self.length, self.width)) def getArea(self): print("这个长方形的面积是:%f" %(self.length * self.width))
out
p = Person()
p.setRect()
请输入矩形的长和宽
长: