小甲鱼python课后题36及详解

0.对象中的属性和方法,在编程中实际是什么?
变量和函数。
1.类和对象是什么关系呢?
类是对象的抽象表达,对象是类的实际表现。
2.如果我们定义了一个猫类,那你能想象出由“猫”类实例化的对象有哪些?
黑猫,白猫,黑猫警长。
3.类的定义有些时候或许不那么“拟物”,有时候会抽象一些,例如我们定义一个矩阵类,那你会为此添加哪些属性和方法呢?
添加长度,宽度,坐标,颜色等属性,计算面积和周长等方法。
4.类的属性定义应该尽可能抽象还是尽可能具体?
抽象,这样才叫面向对象啊。
5.请用一句话概括面向对象的几个特征?
封装:对外部隐藏对象的工作细节
继承:子类自动共享父类之间数据和方法的机制

>>> class MyList(list):
	pass

>>> list1 = MyList()
>>> list1.append(0)
>>> list1
[0]

多态:可以对不同类的对象调用相同的方法,产生不同的结果,就是不同类的同一个方法名调用和后的结果不一样。
6.函数和方法有什么区别?
方法多了一个self参数。

动手

0.按照以下提示尝试定义一个Person类并生成类实例对象。
属性:姓名(默认姓名为“小甲鱼”)
方法:打印姓名
提示:放法中对属性的引用形式加上self,如self.name

class Person:#Python中的类约定以大写字母开头
	#属性
	name = '小甲鱼'
	def PrintName(self):
		print(self.name)

1.按照以下提示尝试定义一个矩阵类并生成类实例对象。
属性:长和宽
方法:设置长和宽->setRect(self),获得长和宽->getRect(self),获得面积->getArea(self)
提示:方法中对属性的引用形式加上self,如self.width
程序截图:
在这里插入图片描述

class Person:#Python中的类约定以大写字母开头
 #属性
 length = 1
 width = 1
 def setRect(self):
  print("请输入矩形的长和宽:")
  self.length = float(input('长:'))
  self.width = float(input('宽:'))

 def getRect(self):
		print("这个矩形的长是:%.2f,宽是:%.2f" % (self.length,self.width))

 def getArea(self):
		return self.length*self.width
``
发布了44 篇原创文章 · 获赞 4 · 访问量 1071

猜你喜欢

转载自blog.csdn.net/qq_44162236/article/details/102790345