1、请简述什么是类,什么是对象?
类就是一个模板,模板里可以包含多个函数,函数里实现一些功能。
对象则是根据模板创建的实例,通过实例对象可以执行类中的函数。
2、python中定义一个类的语法格式是什么
class ClassName:
#属性
#方法
pass
3、类(class)由哪三个部分构成
类成员 方法 属性
4、定义一个水果类,然后通过水果类,创建苹果对象、橘子对象、西瓜对象并分别添加上颜色属性
class Fruit(object):
def __init__(self,color):
self.color = color
apple = Fruit('红色')
orange = Fruit('橘色')
watermelon = Fruit('绿色')
print(apple.color)
print(orange.color)
print(watermelon.color)
红色
橘色
绿色
5、init方法有什么作用,如何定义?
初始化方法,初始化类中的属性。
def init(self,x):
self.x = x
6、方法中的"self"代表什么?
self可以理解成对象自己,某个对象调用其方法时,python解释器会把这个对象作为第一个参数传递给self。
8、定义一个Animal类
- 1、使用init初始化方法为对象添加初始属性。如颜色,名字,年龄。
- 2、定义动物方法,如run,eat等方法。如调用eat方法时打印xx在吃东西就可以。
- 3、定义一个str方法,输出对象的所有属性。
class Animal():
def __init__(self,name,color,age):
self.name = name
self.color = color
self.age = age
def run(self):
print(f'{self.name} is running!')
def eat(self):
print(f'{self.name} is eatting')
def __str__(self):
return f'姓名:{self.name} 颜色:{self.color} 年龄:{self.age}'
cat = Animal('Tom','black',5)
cat.run()
cat.eat()
print(cat)
Tom is running!
Tom is eatting
姓名:Tom 颜色:black 年龄:5
9、str方法可以没有返回值,这句话是否正确?
错误,str必须返回一个字符串
10、请简单使用代码写单继承的格式。
class A:
def test(self):
print('____AAA____')
class B(A):
pass
c = B()
c.test()
____AAA____
11、如果子类中没有定义init方法,在实例化一个对象时,会调用父类的构造方法吗?
不会,在创建对象时会默认调用init方法